2014-04-03 17 views
5

İstediğim erişilebilir bir yapıcı yok Ben Kayıt eylemini erişiyorum o zaman birliğinitip IUserStore`1 Unity 3. ile kurulum MVC5 uygulamasına

eklemek standart şablondan varsayılan web mvc5 uygulamasını yarattı AccountController içinde aşağıdaki özel durum alırım:

IUserStore`1 türünde erişilebilir bir kurucu yok.

bu gönderiden itibaren How to add MVC 5 authentication to Unity IoC? Sorun, Unity'nin daha uzun parametre listesi ile yapıcıyı seçtiğini biliyorum. Ben yapmak istiyorum ne

container.RegisterType<AccountController>(new InjectionConstructor()); 

bunu mi kodunda hiçbir yapılandırma dosyasında kaydetmek için:

çözüm varsayılan kurucu ile kullanılmak üzere Hesap denetleyicisi kaydetmek için aşağıdaki yoludur web.config içinde aynı şeyi yapmak mümkün mü?

Saygılarımızla, Sebastian

cevap

4

XML yapılandırmayı kullanarak Unity yapılandırabilirsiniz.

<configSections> 
    <section name="unity" type="Microsoft.Practices.Unity.Configuration.UnityConfigurationSection, Microsoft.Practices.Unity.Configuration"/> 
</configSections>  

<unity xmlns="http://schemas.microsoft.com/practices/2010/unity">  
    <container> 
    <register type="MyApp.AccountController, MyApp"> 
     <constructor /> 
    </register> 
    </container> 
</unity> 

Ve sonra açıkça yapılandırmayı yüklemek gerekir: Senin durumunda böyle bir şey olmazdı Tam olarak ne gerekli

IUnityContainer container = new UnityContainer(); 
container.LoadConfiguration(); 
+0

. Şerefe! –