如何让基于 [HandlerAttribute] 的拦截在 Unity 中默认对所有内容起作用?
我想在我的项目中使用基于 [HandlerAttribute]
的拦截(因为它对于新开发人员来说稍微更明显)。但是,除非我在 RegisterType
中显式指定 new InterceptionBehavior
,否则我无法让它工作。
有没有一种简单的方法可以在不污染 RegisterType
调用的情况下对所有内容启用 [HandlerAttribute]
检测?
I want to use [HandlerAttribute]
-based interception in my project (because it is slightly more obvious to the new developers). However I can't get it to work unless I explicitly specify new InterceptionBehavior<PolicyInjectionBehavior>()
in RegisterType
.
Is there an easy way to enable [HandlerAttribute]
detection on everything without polluting RegisterType
calls?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我认为以下应该实现您想要的
定义一个
UnityContainerExtension
,如下所示:将其添加到容器中:
然后对于每个注册的类型,这应该配置
Interception
来应用虚拟会员。然后,这应该会拾取任何已应用的[HandlerAttribute]
。I think the following should achieve what you're after
Define a
UnityContainerExtension
like so:Add this to the container:
Then for every registered type, this should configure
Interception
to apply on virtual members. This should then pick up on any applied[HandlerAttribute]
s.