Freigeben über


Compilerfehler CS5001

Das Programm enthält keine statische "Main"-Methode, die für einen Einstiegspunkt geeignet ist.

Dieser Fehler tritt auf, wenn keine statische Main Methode mit einer korrekten Signatur im Code gefunden wird, der eine ausführbare Datei erzeugt. Es tritt auch auf, wenn die Einstiegspunktfunktion Main, in der falschen Schreibweise definiert ist, z. B. in Kleinbuchstaben main. Informationen zu den Regeln, die für die Main Methode gelten, finden Sie unter "Main()" und "Command-Line Arguments".

Hinweis

Diese Warnung wird nur während expliziter Erstellung oder Neuerstellung gemeldet. Sie wird während der Eingabe in der IDE nicht als Teil der IntelliSense-Diagnose angezeigt. Dies bedeutet: Wenn Sie die Warnung mithilfe des Felds beheben oder entfernen, wird die Warnung möglicherweise in der Fehlerliste beibehalten, bis Sie das Projekt erstellen oder erneut erstellen.

Wenn die Main-Methode über einen async-Modifizierer verfügt, stellen Sie sicher, dass die ausgewählte C#-Sprachversion auf 7.1 oder höher eingestellt ist und Task oder Task<int> als Rückgabetyp verwendet werden soll.

Die Main Methode ist nur beim Kompilieren einer ausführbaren Datei erforderlich, d. h., wenn das Exe - oder Winexe-Element der OutputType-Compileroption angegeben wird. Die folgenden Visual Studio-Projekttypen geben standardmäßig eine der folgenden Optionen an:

  • Konsolenanwendung
  • ASP.NET Core-Anwendung
  • WPF-Anwendung
  • Windows Forms-Anwendung

Beispiel

Im folgenden Beispiel wird CS5001 generiert:

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