ASP.Net MVC uygulamasında kullanıcıları Yetkilendirmek için bir Özel Eylem Filtresi uyguladım. aşağıdaki gibiCastle Windsor'u kullanarak CustomAttribute'e bağımlılığı enjekte etme
Ben denetleyicilerin tüm içine bağımlılık enjeksiyon sağlamak için CastleWindsor kullanın:
protected virtual IWindsorContainer InitializeServiceLocator()
{
IWindsorContainer container = new WindsorContainer();
ControllerBuilder.Current.SetControllerFactory(new WindsorControllerFactory(container));
container.RegisterControllers(typeof(HomeController).Assembly);
ComponentRegistrar.AddComponentsTo(container);
ServiceLocator.SetLocatorProvider(() => new WindsorServiceLocator(container));
return container;
}
benim CustomAttribute içinde, ancak ben kullanıcı Oluşturucu alamıyorum, benim denetleyicilerin herkes tarafından kullanılan bir bağımlılık gerek bir öznitelik tabanlı enjeksiyon.
Peki buradaki en temiz yol nedir? Bağımlılığı nasıl sağlayabilirim?
Özniteliklere davranış koymayın ... –
olası yinelemesi [Windsor'u ActionFilterAttributes içine bağımlılıkları enjekte etmek için nasıl kullanırım?] (Http://stackoverflow.com/questions/553330/how-do-i-use- windsor-to-inject-bağımlılıkları-içine-actionfilterattributes) – BonyT
IMHO en iyi yanıtı burada http://stackoverflow.com/questions/10708565/asp-net-mvc-ifilterprovider-and-separation-of-concerns (ve bu söz konusu olduğu kendisi - çok iyi bir örnek (ipucu: 'IFilterProvider')). –