Erro do Compilador CS5001

Programa não contém um método "Main" estático adequado para um ponto de entrada

Esse erro ocorre quando nenhum método estático Main com uma assinatura correta é encontrado no código que produz um arquivo executável. Também ocorrerá se a função de ponto de entrada, Main, for definida com a caixa errada, como main em letras minúsculas. Para obter informações sobre as regras que se aplicam ao método Main, consulte Main() e argumentos de linha de comando.

Se o método Main tiver um modificador async, verifique se a versão da linguagem C# selecionada é 7.1 ou superior e use Task ou Task<int> como o tipo de retorno.

O método Main só é necessário ao compilar um arquivo executável, ou seja, quando o elemento exe ou winexe da opção do compilador TargetType é especificado. Os seguintes tipos de projeto do Visual Studio especificam uma destas opções por padrão:

  • Aplicativo de console
  • Aplicativo ASP.NET Core
  • aplicativo WPF
  • aplicativo Windows Forms

Exemplo

O exemplo a seguir gera 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() {}
}