英語で読む

次の方法で共有


コンパイラ エラー CS5001

プログラムは、エントリ ポイントに適切な静的 'Main' メソッドを含んでいません

このエラーは、実行可能ファイルとして生成されるコードに、正しく署名された静的 Main メソッドが見つからない場合に発生します。 また、エントリ ポイント関数が大文字と小文字を間違えて定義されている場合 (たとえば、Main を小文字で main と表記するなど) にも発生します。 Main メソッドに適用される規則については、「Main() とコマンド ライン引数」を参照してください。

Main メソッドに async 修飾子がある場合は、選択した C# 言語のバージョンが 7.1 以降であることを確認し、戻り値の型として Task または Task<int> を使用してください。

Main メソッドが必要なのは、実行可能ファイルをコンパイルする場合だけです。つまり、TargetType コンパイラ オプションの exe 要素または winexe 要素が指定されている場合です。 次に示す種類の Visual Studio プロジェクトでは、これらのオプションのいずれかが既定で指定されています。

  • コンソール アプリケーション
  • ASP.NET Core アプリケーション
  • WPF アプリケーション
  • Windows フォーム アプリケーション

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

// CS5001.cs
// CS5001 expected when compiled with -target:exe or -target:winexe
public class Program
{
   // Uncomment the following line to resolve.
   // static void Main() {}
}