当前位置: 首页 > 编程语言 > C#

InjectingDependenciesintoCustomAttributesUsingCastleWindsor分享

时间:2023-04-10 15:23:26 C#

ChineseInjectingDependenciesinCustomAttributesUsingCastleWindsor在我的ASP.NetMVC应用程序中,我实现了一个自定义ActionFilter来授权用户。我使用CastleWindsor为所有控制器提供依赖注入,如下所示:ControllerBuilder.Current.SetControllerFactory(新温莎控制器工厂(容器));container.RegisterControllers(Typeof(HomeController).Assembly);ComponentRegistrar.AddComponentsTo(容器);ServiceLocator.SetLocatorProvider(()=>newWindsorServiceLocator(container));返回容器;在我的CustomAttribute中,我需要一个所有控制器都使用的依赖项,但我不能在属性中使用基于构造函数的注入。那么这里最干净的方法是什么?我如何提供依赖项?好的-这似乎是将数据库注入ASPMVC和CastleWindsor的验证属性的副本,这已经得到解答。另外,如何使用Windsor将依赖项注入ActionFilterAttributes。阅读以上内容和参考文章后-对我来说关键点是http://weblogs.asp.net/psteele/archive/2009/11/04/using-windsor-to-inject-dependencies-into-asp-net-mvc-actionfilters.aspx对于任何感兴趣的人。你不能。属性是元数据。把行为放在里面是错误的。放置依赖性甚至更糟。使用属性作为标记来表示要应用行为的对象,并在别处实现该行为。在MVC的其他地方,这通常意味着自定义操作调用程序使用属性中的数据来提供所需的行为。以上就是C#学习教程:使用CastleWindsor为CustomAttribute共享的所有内容注入依赖。如果对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。涉及侵权,请点击维权联系管理员删除。如需转载请注明出处: