C#, режим "Изменить и продолжить": ошибка 4019
Добавление некоторого блока перед и после активной инструкции не позволит продолжить сеанс отладки при включенном режиме "Изменить и продолжить".
Эта ошибка указывает, что предпринята попытка добавить блок обработки исключений вокруг блока активной инструкции, что не поддерживается режимом "Изменить и продолжить" во время отладки. Блоки, которые могут вызвать эту ошибку:
блок catch / finally вокруг активной инструкции;
блок foreach / using / lock / fixed вокруг активной инструкции;
блок try вокруг активной инструкции, который находится не на верхушке стека вызовов.
Рассмотрим следующий пример:
class Example
{
static void Main()
{
System.Console.WriteLine("Main");
}
}
Если установить точку останова на вызов WriteLine, затем приступить к отладке приложения и попробовать добавить try {} finally { } с блоком finally, обрамляющим вызов WriteLine, возникнет эта ошибка.
Исправление этой ошибки
Выберите команду Отменить в меню Отладка для отката изменений.
–или–
В меню Отладка выберите пункт Остановить отладку, затем внесите изменения в код и начните отладку заново.
См. также
Ссылки
try-catch-finally (Справочник по C#)
Поддерживаемые изменения кода (C#)
Режим "Изменить и продолжить" (Visual C#)