私はC#でWPFアプリケーションを使用しています。私は、次のような静的クラスで定義された定数の数いる:同じ名前空間で別のアセンブリの静的クラスにアクセスするにはどうすればいいですか?
のProject1:
namespace MyCompany
{
public static class Constants
{
public static int MY_CONSTANT = 123456;
}
}
は、その後、私はプロジェクト1内の任意の場所私の定数にアクセスするために必要なすべてがある:
int x = Constants.MY_CONSTANT;
同じソリューションに別のプロジェクトを追加し、同じルート名前空間を使用します:
プロジェクト2
namespace MyCompany.MyControl
{
class VideoControl
{
int x;
x = Constants.MY_CONSTANT; //<-- doesn't work
x = MyCompany.Constants.MY_CONSTANT; //<-- doesn't work either
}
}
静的なConstantsクラスに2番目のアセンブリからアクセスする方法がわかりません。また、循環依存関係が発生するため、最初のアセンブリへの参照を追加することはできません(2番目のプロジェクトアセンブリは最初のプロジェクトアセンブリで使用されるWPFコントロールです)。
私も可能なことをしようとしていますか?現在、私の回避策はコンストラクタで必要な定数をすべて渡していますが、私はむしろそれらに直接アクセスしたいと思います。
循環参照を解決する必要があります。定数クラスを、他の両方のアセンブリが参照できる3番目のアセンブリに移動する可能性があります。 – Blorgbeard
ポイントの横に:定数が必要な場合は、それを定数 'public const int MY_CONSTANT = 123456;'として宣言してください。 – Hinek