次の方法で共有


C# エディット コンティニュ: エラー 4027

アクティブ ステートメントの前後にあるブロック ステートメントを更新すると、エディット コンティニュが有効なとき、デバッグ セッションを続行できなくなります。

このエラーは次の場合に発生します。

  • 変更済みブロック内に実行ポインターがあるときに、foreach ステートメント、using ステートメント、lock ステートメント、または fixed ステートメントの一部を変更しようとした。

  • 変更済みブロック内に実行ポインターがあるときに、catch を try に追加しようとした。

  • 変更済みブロック内に実行ポインターがあるときに、try/catch を try/finally に変更しようとした。

詳細については、「アクティブなステートメント」を参照してください。

次のコードがあるとします。

class Program

{

   static void Main()

   {

      using (System.IO.StreamReader file = System.IO.File.OpenText(@"example.txt"))

      {

         System.Console.WriteLine(file.ReadLine());

      }

   }

}

WriteLine 呼び出しにブレークポイントを設定してデバッグを開始した後、using ステートメント内のテキスト ファイルの名前を変更しようとすると、このエラーが発生します。

このエラーを解決するには

  • [デバッグ] メニューの [元に戻す] をクリックして、変更を元に戻します。 変更を加えることができるのは、ステートメントがアクティブでなくなってからです。

    または

  • [デバッグ] メニューの [デバッグの停止] をクリックし、変更を加えた後で新しいデバッグ セッションを開始します。

参照

参照

foreach、in (C# リファレンス)

using (C# リファレンス)

try-catch (C# リファレンス)

try-finally (C# リファレンス)

lock ステートメント (C# リファレンス)

サポートされているコード変更 (C#)

エディット コンティニュ (Visual C#)

その他の技術情報

エディット コンティニュのエラーと警告 (C#)