C# NHibernate需要一个事务才能成功更新
使用NHibernate,在我的NUnit测试中,我可能会进行一个调用,例如C# NHibernate需要一个事务才能成功更新,c#,nhibernate,C#,Nhibernate,使用NHibernate,在我的NUnit测试中,我可能会进行一个调用,例如会话。删除(\u user),其中\u user是一个持久对象 我的问题似乎是,除非在事务中包含此更新和任何其他更新,否则它永远不会成功 所以 工作 但是, 没有,但没有报告任何异常或问题 有什么想法吗?NHibernate只会在刷新会话时向数据库发送更新/插入/删除 您可以通过调用Flush()显式地实现这一点,但还应该查看配置:您也可以在那里指定默认的刷新行为 有趣的是: NHibernate仅在刷新会话时向数据库
会话。删除(\u user)
,其中\u user
是一个持久对象
我的问题似乎是,除非在事务中包含此更新和任何其他更新,否则它永远不会成功
所以
工作
但是,
没有,但没有报告任何异常或问题
有什么想法吗?NHibernate只会在刷新会话时向数据库发送更新/插入/删除 您可以通过调用Flush()显式地实现这一点,但还应该查看配置:您也可以在那里指定默认的刷新行为 有趣的是:
NHibernate仅在刷新会话时向数据库发送更新/插入/删除 您可以通过调用Flush()显式地实现这一点,但还应该查看配置:您也可以在那里指定默认的刷新行为 有趣的是:
已排序!这个链接非常有用。总之,始终使用事务。已排序!这个链接非常有用。总之,始终使用事务。
CurrentSessionContext.Bind(GetHibernateSessionFactory().OpenSession());
ITransaction trans=session.BeginTransaction()
session.Delete(_user);
trans.Commit();
CurrentSessionContext.Unbind(GetHibernateSessionFactory())
CurrentSessionContext.Bind(GetHibernateSessionFactory().OpenSession());
session.Delete(_user);
CurrentSessionContext.Unbind(GetHibernateSessionFactory())