Share via


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() {}
}