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


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

Изменение или удаление активной инструкции в объявлении конструктора не позволит продолжить сеанс отладки при задействованном режиме "Изменить и продолжить".

Эта ошибка показывает, что предпринята попытка изменить объявление активного конструктора. Режим "Изменить и продолжить" не поддерживает изменения объявления активного конструктора во время отладки. Дополнительные сведения см. в разделе Активные операторы.

Рассмотрим следующий пример:

class Program

{

   string arg;

   Program(): this(null)

   {

   }

   Program(string arg)

   {

      this.arg = arg;

   }

   static void Main()

   {

      Program p = new Program();

   }

}

Если установить точку останова на строке this(null), начать отладку приложения, а затем попробовать изменить this(null) на this("Hello"), то возникает эта ошибка.

Чтобы устранить данную проблему

  • Пройдите по шагам код вплоть до объявления конструктора. На этом этапе изменения будут автоматически применены.

    —или—

    Отмените изменения и затем продолжайте отладку без изменений.

    —или—

    Завершите сеанс отладки, внесите необходимые изменения, затем начните новый сеанс отладки.

См. также

Ссылки

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

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

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

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