微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

通过依赖注入传递ASP.NET用户

在我的Web应用程序中,我有各种组件需要访问当前经过身份验证的用户(HttpContext.User).

组件可以通过两种明显的方式访问它:
1)从HttpContext.Current访问用户
2)在构造函数中传递用户

>不理想,因为它使测试变得困难,并将应用程序组件与Web问题联系起来,当他们真的不知道它时.
>只是凌乱而且使一切变得复杂.

所以我一直在考虑使用IoC容器(通过依赖注入)将当前用户(或者可能只是名称/ id)传递给任何需要它的组件.

是否有人使用此技术将当前ASP.NET用户提供给应用程序的某些部分?或者,这听起来像是一种明智的做法吗?我想知道这对人们有什么影响.

谢谢

更新:
感谢Raj的一个很好的例子.如果有人使用AutoFac有类似的例子,我将不胜感激!

更新2:谢谢你的回答,希望我能分开接受!

解决方法

在autofac中:

builder.Register(c => HttpContext.Current.User.Identity).HttpRequestScoped();

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐