Nhibernate 具有存储库的桌面应用程序中每个ViewModel的会话
我一直在使用NHibernate、WPF、Prism和Unity容器编写WPF桌面应用程序,但在服务/存储库中的会话管理以及如何通过使用Unity的依赖注入干净地完成这项工作方面存在问题 阅读之后,我现在有了一个针对每个ViewModel/Presenter的会话 但是,如果我的viewmodel上有多个服务,我必须将会话传递到每个服务中,这似乎很麻烦,而且不太正确,因为我希望通过存储库执行所有数据访问 e、 g 每个服务本质上都是存储库上的一个门面,我希望此演示者的每个存储库都参与到同一个会话中,而无需显式设置它 如果您能就如何处理此问题提供任何建议,我将不胜感激,因为我确信有一个非常接近的解决方案,但我不确定如何解决此问题。我建议您研究一下 它有一个使用MVVM的完整WPF示例Nhibernate 具有存储库的桌面应用程序中每个ViewModel的会话,nhibernate,session,repository,viewmodel,Nhibernate,Session,Repository,Viewmodel,我一直在使用NHibernate、WPF、Prism和Unity容器编写WPF桌面应用程序,但在服务/存储库中的会话管理以及如何通过使用Unity的依赖注入干净地完成这项工作方面存在问题 阅读之后,我现在有了一个针对每个ViewModel/Presenter的会话 但是,如果我的viewmodel上有多个服务,我必须将会话传递到每个服务中,这似乎很麻烦,而且不太正确,因为我希望通过存储库执行所有数据访问 e、 g 每个服务本质上都是存储库上的一个门面,我希望此演示者的每个存储库都参与到同一个会话
CustomerMaintenanceViewModel
{
service1.Session = SessionForThisPresenter;
service2.Session = SessionForThisPresenter;
service3.Session = SessionForThisPresenter;
service1.GetAllSomething();
service2.GetAllSomething();
service3.GetAllSomething();
}