パラメータなしのメインメソッドのみが“有効なスタートアップオブジェクトとみなされるのはなぜですか? C#プロジェクトの場合
-
06-07-2019 - |
質問
複数のエントリポイント/メインメソッドを持つC#プロジェクトを含むソースファイルのzipをダウンロードしました。 私はいじくり回したかったので、新しいタイプ/クラスでこのような別のものを作成しました
class MyExperiments
{
static void Main(String[] args)
{
// do something
}
}
その後、プロジェクトのプロパティに切り替えました。スタートアップオブジェクトをMyExperimentsに切り替えるだけです。驚いたことに、ドロップダウンにはありませんでした。私は再構築し、メソッドを公開し、たくさんのことを試してみました。最後に、メモ帳で.csprojを手動で編集し、それが機能しました。 さらにいじって、パラメータを削除してそれを作りました
static void Main()
そして今VSプロジェクトのプロパティはスタートアップオブジェクトを「見る」ことができます。そのため、ドロップダウンを使用して選択できます。次に、String []を追加し直しましたが、すべて機能していました。
私には少し奇妙に思えます(最も一般的な形式は、C / C ++時代からのコマンドライン引数のパラメーターを持つMainメソッドだからです)。 MSDN は、ドロップダウンに有効なスタートアップが含まれることを示していますオブジェクトがプロジェクトに存在する場合。
解決
良いことは、コピーアンドペーストします。これは Main(String [] args)
の大文字の 'S'です。どうやらVSはいくつかのテキストマッチングを使用しており、大文字と小文字が区別されます。おそらくそうあるべきです。
他のヒント
lol-IDEのバグのように見えます:
static void Main(String[] args) {}
表示されませんが、
static void Main(string[] args) {}
する!
更新: 接続フィードバック/バグへの応答、
フィードバックをありがとう!に見える ここでの問題は、" String" Mainメソッドのパラメーターは 完全に小文字の「文字列」である(そしてそれ あなたに指摘されたようです stackoverflow post)。見える プロジェクトを更新するためのここの提案 プロパティページを少し賢くする スタートアップオブジェクトの取得について しかし、合理的なものがあることを考えると 回避策、私たちは投資するつもりです 安定化と改善のリソース VS2010のパフォーマンス。行きます 先にバグを" Wont 修正"でもお気軽に バグがある場合は再起動します その他の質問/コメント。
ありがとう、DJ Park C#IDE、プログラム マネージャー
だから、今のところ心の奥に置いておかなければならないもののようです-儀酒