次の方法で共有


コンパイラ エラー CS1618

更新 : 2007 年 11 月

エラー メッセージ

'method'' は条件付き属性なので、この属性でデリゲートを作成できません。

メソッドが一部のビルドに存在しない可能性があるため、条件付きメソッドではデリゲートを作成できません。

次の例では CS1618 エラーが生成されます。

// CS1618.cs
using System;
using System.Diagnostics;

delegate void del();

class MakeAnError {
   public static void Main() {
      del d = new del(ConditionalMethod);   // CS1618
      // Invalid because on builds where DEBUG is not set, 
      // there will be no "ConditionalMethod".
   }
   // To fix the error, remove the next line:
   [Conditional("DEBUG")]
   public static void ConditionalMethod() 
   {
      Console.WriteLine("Do something only in debug");
   }
}