12

以下のコードの何が問題なのかわかりません。

コンパイルしようとすると、次のメッセージが表示されます。

エントリ ポイントに適した静的な「メイン」メソッドが含まれていません。

これは私のコードです:

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;
        }

    }           
}
}

誰かが私が間違っている場所を教えてください。

4

7 に答える 7

21

すべての C# プログラムにはエントリ ポイントが必要です。既定では、新しい c# Windows フォーム プロジェクトにはProgram、Program.cs ファイルにクラスが含まれています。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace StackOverflow6
{
    static class Program
    {
        /// <summary>
        /// The main entry point for the application.
        /// </summary>
        [STAThread]
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new Form1());
        }
    }
}

あなたはおそらくこれを見逃しているか、削除しています。

于 2013-06-13T19:18:45.727 に答える
17

プロジェクトは空のプロジェクトとして作成する必要があります。したがって、出力タイプはコンソール アプリケーションとして表示されます。クラスライブラリに変更すると、動作するはずです

于 2013-10-24T18:15:23.603 に答える
7

コードの単純な変更。main メソッドは 'Main' (大文字の M) にする必要があります。

于 2016-02-16T06:46:16.463 に答える
3

私はちょうどこの問題を自分で抱えていました。

winforms プロジェクトを作成し、コードをリファクタリングすることにしましたが、プロジェクトに UI が含まれなくなったため、Program.cs ファイルと winforms ファイルを削除して、同じエラーが発生しました。

上記の Matt Houser のように static void main() メソッドを再度追加するか、プロジェクトのプロパティに移動して、[アプリケーション] タブの出力タイプを [クラス ライブラリ] に変更する必要があります。

于 2013-07-13T16:25:20.870 に答える
2

私もこの間違いを経験しました。プロジェクト プロパティ/アプリケーション タブ (出力タイプ:) にあるドロップダウンを変更しました。元の選択値は「クラス ライブラリ」でしたが、「Windows アプリケーション」に変更したところ、同じエラーが見つかりました。今解決しました。

于 2014-05-02T18:58:01.040 に答える