2011-09-13 4 views
0

私は、すべてmain関数の中でまったく同じボイラープレートコードを含む多くのプロジェクトを持っています。それらはすべて同じアセンブリ(機能の大部分を提供するアセンブリ)を参照します。このアセンブリは、この同じ定型文のメインコードを使用する人以外は参照されません。プログラムの代わりにクラスライブラリのMainを使用

メイン関数をアセンブリ内のクラスの内部に配置し、現在のアセンブリ内のクラスではなくアセンブリを参照するプログラム内でMain関数を使用できますか?もし私ができるなら、私はプログラム内にメイン関数を書かないことを好むでしょう。

EDIT:参照するアセンブリのメイン内部をエントリポイントにします。

+0

それは.exeの組み立てなければなりません。 main()メソッドを提供することで問題を解決してください。実行する他の 'main'を呼び出すだけです。 –

答えて

2

いいえ、実行可能アセンブリ内の静的Main関数をスキップすることはできません。これはエントリポイントですが、必要なすべてのプロジェクトのMainメソッドから呼び出される同じシグネチャでこのアセンブリ内のメソッドを完全に細かく定義できますこのボイラープレートコード。例えば

static void Main(string[] args) 
{ 
    SomeClass.SomeMethodToDoBoilerplate(args); 
    SomeSpecificMethods(); 
} 
+0

申し訳ありませんが、わかりませんでした。参照されているアセンブリのメイン内部をエントリポイントにしたい。 –

+0

@Jonathan Sternberg、いいえ、私が答えて言ったように、それは不可能です。 target:exeまたはtarget:winexeでコンパイルされたアセンブリは静的なMain関数を持っていなければなりません。そうしないと、まったくコンパイルできません。 –

関連する問題