我正在考虑使用Unity来管理自定义用户类实例的生命周期。我计划使用自定义ASP.NET会话管理器来扩展LifetimeManager。我想要的是能够从我的自定义类中存储和检索当前登录的用户对象,并且让Unity从ASP.NET的会话对象中获取User实例,或者(在Win32项目中)从静态或当前线程中检索它。
到目前为止,我最好的解决方案是在启动时创建一个静态的Unity容器实例,并使用Resolve方法从我的每个类中获取我的User对象。 但是,这似乎会在其他类中创建对Unity容器的依赖项。 实现此目标的更“Unity”方式是什么?我想能够从任何类中读取/替换当前的User实例。