Поделиться через


C#, режим "Изменить и продолжить": ошибка 4059

Изменение ' [метода| свойства | индексатора | оператора | события | доступа | конструктора | деструктора]', содержащего активный оператор в созданном компилятором коде, будет препятствовать продолжению сеанса отладки при включенном режиме "Изменить и продолжить".

Предпринята попытка изменить метод, свойство, индексатор, оператор, событие, доступ, конструктор или деструктор, содержащий активный оператор в созданном компилятором коде. Режим "Изменить и продолжить" не поддерживает такие изменения во время отладки.

Рассмотрим следующий код.

class Disposable: System.IDisposable

{

   public void Dispose()

   {

   }

}

class Program

{

   static void Main(string[] args)

   {

      int a = 10;

      using (Disposable dipose = new Disposable())

      {

      }

   }

}

Если задать точку останова в методе dispose, начать отладку приложения и попробовать изменить оператор int a = 10 на int a = 20, возникнет именно эта ошибка.

Исправление этой ошибки

  • Чтобы отменить изменения, выберите в меню Правка команду Отменить

    – или –

    В меню Отладка выберите команду Остановить отладку, внесите изменения в код и начните отладку заново.

См. также

Ссылки

Поддерживаемые изменения кода (C#)

Режим "Изменить и продолжить" (Visual C#)

Другие ресурсы

Ошибки и предупреждения режима "Изменить и продолжить" (C#)