【发布时间】:2010-10-16 23:13:32
【问题描述】:
我正在考虑使用 Unity 来管理自定义用户类实例的生命周期。我计划使用自定义 ASP.NET 会话管理器来扩展 LifetimeManager。我想要做的是从我的自定义类中存储和检索当前登录的用户对象,并让 Unity 从 ASP.NET 中的会话对象中获取 User 的实例,或者(在 Win32 项目中)检索它静态或从当前线程。
到目前为止,我最好的解决方案是在启动时创建我的 Unity 容器的静态实例,并使用 Resolve 方法从我的每个类中获取我的用户对象。但是,这似乎在我的其他类中创建了对统一容器的依赖。实现这一目标的更“团结”的方式是什么?我希望能够从任何类中读取/替换当前的用户实例。
【问题讨论】:
-
“自定义 ASP.NET 会话管理器”是什么意思?你说的是 NHibernate Session 还是 Data/ObjectContext?
标签: c# asp.net session unity-container