C# 我可以同时使用ISession和IStatelessession吗?
考虑每个视图的事务模型,其中使用C# 我可以同时使用ISession和IStatelessession吗?,c#,nhibernate,transactions,stateless,C#,Nhibernate,Transactions,Stateless,考虑每个视图的事务模型,其中使用IHttpModulei使用标准i会话打开事务 现在,我有一个页面,我想做一些批处理操作。由于批处理操作首选IStatelessSession: 我可以同时打开ISession和IStatelessSession吗?安全吗 如果1。是,我可以使用相同的ITransaction 如果2。否我是否应该提交并关闭ISession及其关联的ITransaction,然后为其打开IStatelessSession和新的ITransaction 如果3。是的,我应该知道有什么
IHttpModule
i使用标准i会话打开事务
现在,我有一个页面,我想做一些批处理操作。由于批处理操作首选IStatelessSession
:
我可以同时打开ISession
和IStatelessSession
吗?安全吗
如果1。是,我可以使用相同的ITransaction
如果2。否我是否应该提交并关闭ISession
及其关联的ITransaction
,然后为其打开IStatelessSession
和新的ITransaction
如果3。是的,我应该知道有什么陷阱吗
欢迎提出任何意见
是的,是的
不,每个都有自己的事务
我会提交ISession的事务,但保持ISession打开
我建议不要为每个HTTP请求启动事务。相反,当您有更改要提交时,在页面上启动并提交事务。这还改进了异常处理,因为您可以在页面上而不是在请求结束时捕获异常