- 締切済み
1つのプロジェクトで、違う名前空間のメソッドを使いたい
C# 同じプロジェクトで、別のnamespaceのprivateメソッド使いたいですが、方法を教えてくださいませんか?宜しくお願いします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- うぃず(@Wizard_Zero)
- ベストアンサー率69% (344/495)
回答No.2
#1の例をコードにするとこんな感じです。(using部分は省略) [ class1.cs ] namespace ns1 { class Class1 { static internal void MethodA() { Console.WriteLine("Called"); } } } [ program.cs ] namespace Sample { static class Program { /// <summary> /// アプリケーションのメイン エントリ ポイントです。 /// </summary> [STAThread] static void Main() { ns1.Class1.MethodA(); } } } どのようなコードを書いているかご提示できますか?(可能であれば)
- うぃず(@Wizard_Zero)
- ベストアンサー率69% (344/495)
回答No.1
privateメンバは、名前空間に関わらず定義されているクラスの外からは直接呼び出せません。メソッドをinternalまたはpublicとし、名前空間から指定すれば呼び出せます。また、インスタンスを作成しないで呼び出すにはstaticも必要です。 例:名前空間が ns1、クラス名が class1 のinternal static void MethodA() を呼ぶ場合 ns1.class1.MethodA()
補足
うまくいけないが…