8

Veri yığınları için Fluent nHibernate kullanmaya karar verdiğimiz bir ASP.NET MVC projesi üzerinde çalışıyorum. Gevşek kuplajı etkinleştirmek için bir IoC/DI paternine gideriz. Benim sorularım, nereye gitmek için IoC aracı. Windsor, ninject, spring, structuremap ve unity arasındaki farkları bulmaya çalıştım ama her birinin sunabileceği faydaları görmek zor. Senin tecrüben ne?ASP.NET MVC + akıcı nNibernate, hangi IoC aracı?

http://www.hanselman.com/blog/ListOfNETDependencyInjectionContainersIOC.aspx

+3

FYI, bir dahaki sefere böyle bir soru soruyorsunuz, daha çok şöyle ifade ediyorsunuz: "ASP.NET MVC + akıcı nHibernate ile iyi oynamak için bir IoC'de ne aramalıyım?" Daha iyi cevaplar alacaksınız. –

cevap

6

Ben StructureMap kullanın ve kullanımı çok kolay:

7

Scott Hanselman popüler NET IOCs bir sürü oldukça iyi bir karşılaştırma/kontrast madde yer alıyor. Şahsen ben xml kullanarak yapılandırmak istemiyorum ve StructureMap kodu kullanarak yapılandırmak için bir esinti yapar. Uygulamaları değiştirmeniz gerektiğinde, farklı profili değiştirmek de çok kolaydır.

4

Windsor'u kullanıyorum ve şikayet edecek bir şeyim yok. Kullanımı kolay, gerektiğinde genişletilebilir ve sıkışmış olursanız çok bilgi. Ama bence tercih ettiğin konteynırı çok önemli değil. Bahsettiğiniz hepsinin ortak özellikleri vardır ve ayrıca mvccontrib projesinde mvc için kullanılabilir adaptörler vardır. Konteyneri kendi sınıfında sarmanız halinde başka bir konteynere geçiş yapmak zor olmamalıdır, ki bu zaten iyi bir uygulamadır.

1

Windsor'u kullanıyor ve seviyorum. NHibernate kullanmak için, giriş ve bağlantıların basit bir şekilde yapılandırılmasına izin veren bir yerleşik tesis bulunmaktadır.

FluentNhibernate'i kullanmayı planlıyorsanız, Windsor tesisine ConfigurationBuilder hangi tertibatın olduğunu söylemeniz gerekir. Mike Hadlow'un, Windsor ve NHibernate'deki diğer pek çok kişi üzerinde harika bir yazımı var: http://mikehadlow.blogspot.com/2009/01/integrating-fluent-nhibernate-and.html

+0

Windsor ve keskin mimariye gittim. Mükemmel çalışıyor. Ayrıca StructureMap ile bazı testler yaptım ve büyük farklılıklar yok. Microsoft'un en iyi uygulamaları ServiceLocator'ı kullanırken daha sonra bir geçiş yapmak çok kolay. – bondehagen

0

Hafif ve hızlı olan ve NGet aracılığıyla MVC3 projelerine DI Kapsayıcı eklemek için basit bir yol olan Munq kullanıyorum. Şimdiye kadar farklı bir çerçeveye geçme ihtiyacım olmadı - Munq çok uygun.

PM> install-package Munq.MVC3 

Bu projeye App_Start\MunqMvc3Startup.cs ekler ve bağımlılıklar kayıtlı olması gereken yerde budur.