あなたができることはFunc<T, U>
で、MEFはあなたの代理人を処理します。たとえば:その例で
public class FirstClass
{
[Export("Method")]
public string Method(string arg)
{
return arg.ToUpperInvariant();
}
}
public class SecondClass
{
[Import("Method")]
public Func<string, string> Func;
}
、私は名前の契約をエクスポートすることだし、MEFは、自動的に私のための目標デリゲートを配線する方法を決定します。私はExport
をFunc<string, string>
とすることもできます。
だからあなたの場合には、私はにあなたのExport
を変更します
[Export("GetConfiguration")]
そして、あなたのImport
とにプロパティをターゲット:
[Import("GetConfiguration")]
public Func<string, Configuration> GetConfig { get; set; }
単にインポート機能を実行するために、デリゲートを使用します。
希望に役立ちます。