2017-09-15 2 views
0

En espérant que quelqu'un puisse me diriger dans la bonne direction. J'ai refactorisé une application WPF que j'ai écrite (assez complexe - pour moi), pour évaluer Prism et Unity sur MEF.Méthode MEF Équivalent dans Prism Unity

J'ai rencontré un problème avec le modèle ServiceFactory en utilisant Unity - que je ne sais pas comment surmonter. Être un débutant avec toutes ces technologies n'aide certainement pas.

Existe-t-il un moyen équivalent avec Unity pour obtenir le même résultat que le code ci-dessous?

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

Cordialement et merci d'avance. Stephen

+0

Je ne sais pas ce que le résultat effectivement _is_ prévu, mais que vous cherchez 'Container.Resolve'? – Haukinger

Répondre

1

Essayez ceci (en supposant que la ObjectBase.Container propriété renvoie une IUnityContainer):

using Microsoft.Practices.Unity; 
... 
public class ServiceFactory : IServiceFactory 
{ 
    T IServiceFactory.CreateClient<T>() 
    { 
     return ObjectBase.Container.Resolve<T>(); 
    } 
}