困っていること
C#の参考書を読み始めており、
色々なサンプルで、Main関数が使われているため、
他のサンプルのMain関数と名前がぶつかってしまい
ます。
Main関数以外の関数で、名前がぶつかってしまった場合であれば、
適切なnamespaceで分けてあげれば、大丈夫と認識しているのですが、
グローバル名前空間でMain関数が複数あれば、エラーになってしまうので、
複数のサンプルをどういう風に管理, 実行していけばいいのか
分からず悩んでいます。
環境について
Mac
に VisualStudio for Mac
を入れて、
.NET Core
を選択して、インストールした状態です。
(ちなみに、手元にWindows環境はございません)
とりあえず思いついた回避策1
CallMethod.cs を作成して、Sampleのメソッドを呼び出すようにしてみる。
これだと、サンプルで動いていたメソッド名を
毎度、Main->Method1 みたいに変える必要がありますし、めんどいです。
C#
1# Sample1.cs 2 3public class Sample1 4{ 5 static void Method1 6 { 7 System.Console.WriteLine("Sample1"); 8 } 9}
C#
1# Sample2.cs 2 3public class Sample2 4{ 5 static void Method2 6 { 7 System.Console.WriteLine("Sample2"); 8 } 9}
C#
1# CallMethod.cs 2 3class CallMethod 4{ 5 static void Main 6 { 7 Sample1.Method1(); 8 // Sample1.Method1(); 9 // Samplexxx.Methodxxx(); ... 10 11 /* 12 その都度、コメント化したり、コメントアウトしたりして、 13 Sampleを動かす度に、編集していく...orz 14 */ 15 } 16}
とりあえず思いついた回避策2
サンプルを実行する度に、サンプルを消したり、プロジェクトから除外したりする。
消す場合だと、書いたサンプルが手元に残らないので嫌です。
除外だと、どんどん除外ファイルが増えていき、
毎度プロジェクトに戻したりもやはり面倒です。
他の回避策があれば知りたい
上の2つの回避策はとても面倒で、管理がだるそうで、もっといい方法があるんじゃないかと思います。
(エントリーポイントとか、名前空間のこととか、理解できてない部分がある?)
他の回避策などがあれば、ぜひご教示ください。よろしくお願いします。
回答2件
あなたの回答
tips
プレビュー