Leer en inglés

Compartir a través de


Error del compilador CS5001

El programa no contiene ningún método 'Main' estático que sea adecuado para un punto de entrada

Este error se produce cuando no hay ningún método Main estático, con una signatura correcta, en el código que genera un archivo ejecutable. También se produce si la función del punto de entrada, Main, se define de forma incorrecta, por ejemplo poniendo main en minúscula. Para obtener información sobre las reglas que se aplican al método Main, consulte Main() y Argumentos de línea de comandos.

Si el método Main tiene un modificador async, asegúrese de que la versión del lenguaje C# seleccionada sea 7.1 o superior y use Task o Task<int> como tipo de valor devuelto.

El método Main solo es necesario al compilar un archivo ejecutable, es decir, cuando se especifica el elemento exe o winexe de la opción del compilador TargetType. Los siguientes tipos de proyecto de Visual Studio especifican una de estas opciones de manera predeterminada:

  • Aplicación de consola
  • Aplicación ASP.NET Core
  • aplicación WPF
  • aplicación de Windows Forms

Ejemplo

El ejemplo siguiente genera el error 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() {}
}