2017-09-15 10 views
0

誰かが私に正しい方向を向けると願っています。 私が書いたWPFアプリケーション(かなり複雑な - 私に)をリファクタリングして、MEFでPrismとUnityを評価しました。MEFメソッドPrism Unityに相当。

Unityを使用してServiceFactoryパターンの問題に遭遇しました。克服する方法はわかりません。すべてのこれらの技術の初心者であることは、確かに何も助けていません。

Unityと同等の方法で、下のコードと同じ結果が得られますか?

[Export(typeof(IServiceFactory))] 
[PartCreationPolicy(CreationPolicy.NonShared)] 
public class ServiceFactory : IServiceFactory 
{ 
    T IServiceFactory.CreateClient<T>() 
    { 
     return ObjectBase.Container.GetExportedValue<T>(); 
    } 
} 

種類前もって感謝します。 スティーブン

+0

わかりませんか – Haukinger

答えて

1

は(ObjectBase.ContainerプロパティがIUnityContainerを返すと仮定して)これを試してみてください:?実際に_is_何を期待した結果が、あなたは `Container.Resolve`を探している

using Microsoft.Practices.Unity; 
... 
public class ServiceFactory : IServiceFactory 
{ 
    T IServiceFactory.CreateClient<T>() 
    { 
     return ObjectBase.Container.Resolve<T>(); 
    } 
} 
関連する問題