NHibernate不执行删除操作的原因是什么?
public bool Delete(MyType model)
{
using (var session = _sessionFactory.OpenSession())
session.Delete(model);
return true;
}
我试图调用session.Clear()方法,这也没有帮助。我很困惑。 :/
在这种情况下,MyType只有Id& Name。创建操作成功。
答案 0 :(得分:4)
刷新会话,或将Delete放入交易中并提交交易。
NHibernate默认情况下会尝试尽可能推迟执行SQL语句。
答案 1 :(得分:0)
这有助于......
using (var session = _sessionFactory.OpenSession())
{
using (ITransaction tx = session.BeginTransaction())
{
session.Delete(model);
session.Flush();
tx.Commit();
}
}