次のようなことは可能ですか:
[Export(typeof(Settings)]
public static class Settings
{
public string Name {get;set;}
public string Color {get;set;}
}
[Import(typeof(Settings)]
Settings s;
接続するインスタンスがないため、静的クラスをエクスポートすることはできません。2 行目:
Settings s;
静的クラスをインスタンス化できないため、コンパイラ エラーになります。
そうは言っても、これは通常は必要ありません。Settings
MEF は、 (静的ではない場合) クラスの単一のインスタンス (既定) を自動的に作成し、その同じインスタンスをImport
指定された任意のインスタンスに設定します。これにより、静的クラスやシングルトンを使用することの欠点がなく、「シングルトンのような」クラスが効果的に提供されます。