Unity 2.0 拦截和 MethodInitation.Arguments
在 asp.net mvc 2 应用程序上,我使用 Unity 2.0 拦截应用程序进行各种类型的日志记录,其中每个日志条目都需要当前用户的 ID。 目前,我将 User 对象作为参数传递给服务和存储库方法。我这样做的唯一原因是它可以在截获方法的 MethodInitation.Argumants 上使用。理想情况下,我想以某种方式为拦截器提供 User 对象。这似乎不可能。有谁知道它是否或者任何其他 .net AOP 工具是否提供此功能?我还记得这是几年前使用 Spring/Java 的项目中的一个问题,所以我想这是一个常见问题,希望有人已经解决了?
On an asp.net mvc 2 app, I'm using Unity 2.0 interception app for various types of logging where every log entry requires the id of the current user.
Currently I'm passing the User object as an argument to service and repository methods. The only reason I'm doing this is so that it's available on MethodInvocation.Argumants for the intercepted method. Ideally, I'd like to supply the interceptor with a User object somehow. This doesn't seem to be possible. Does anybody know if it is or if any other .net AOP tool provides this? I also remember this being a problem several years ago on a project using Spring/Java so I guess it is a common problem that hopefully someone has solved?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我解决了。
要处理拦截的调用,您必须提供 ICallHandler 的实现。
将 User 参数添加到实现的构造函数中。
I worked it out.
To handle the intercepted calls, you have to supply an implementation of ICallHandler.
Add a User parameter to the implementation's constructor.