“不包含适用于入口点的静态’主’方法”

我无法想象下面我的代码有什么问题。

当我尝试编译时,我收到消息:

不包含适用于入口点的静态“主”方法。

这是我的代码:

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace RandomNumberGenerator { public partial class Form1 : Form { private const int rangeNumberMin = 1; private const int rangeNumberMax = 3; private int randomNumber; public Form1() { randomNumber = GenerateNumber(rangeNumberMin, rangeNumberMax); } private int GenerateNumber(int min,int max) { Random random = new Random(); return random.Next(min, max); } private void Display(object sender, EventArgs e) { switch (randomNumber) { case 1: MessageBox.Show("A"); break; case 2: MessageBox.Show("B"); break; case 3: MessageBox.Show("C"); break; } } } } 

有人可以告诉我哪里出错了。

每个C#程序都需要一个入口点。 默认情况下,新的c#Windows窗体项目在Program.cs文件中包含Program类:

 using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; using System.Windows.Forms; namespace StackOverflow6 { static class Program { ///  /// The main entry point for the application. ///  [STAThread] static void Main() { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Application.Run(new Form1()); } } } 

您可能错过了这个或删除它。

您的项目必须创建为空项目。 因此输出类型显示为控制台应用程序。 将其更改为类库,它应该工作

简单的代码更改。 主要方法应为’Main’(Capital M)。

我自己就是这个问题。

我创建了一个winforms项目,决定重构我的代码,项目现在不包含UI,所以我删除了Program.cs和winforms文件只是为了得到你得到的相同错误。

您需要重新添加静态void main()方法作为上面提到的Matt Houser,或者进入项目属性并将Application选项卡中的输出类型更改为Class Library。

我也经历过这个错误。 我更改了项目属性/应用程序选项卡(输出类型:)中的下拉列表。 原始选择的值是“类库”但我更改为“Windows应用程序”并发现相同的错误。 现在解决了。