NHibernate 如何缓存本机查询?
How NHibernate cache native queries?
我在全局 NHibernate 公共会话中使用本机 sql 查询,例如
string sql = @"update Accounts
set vchBranch = :branch,
bitIsActive = :isActive,
bitIsVisible = :isVisible
where bintId = :id";
ISQLQuery sqlQuery = HibernateUtil.GetCurrentSession().CreateSQLQuery(sql);
sqlQuery.SetBoolean("isActive", account.IsActive);
sqlQuery.SetBoolean("isVisible", account.IsVisible);
sqlQuery.SetInt64("id", account.Id);
sqlQuery.ExecuteUpdate();
这个查询的结果是 NHibernate 缓存的吗?
我找到了答案。它在 Nhibernate 会话中缓存结果对象。
在映射 XML-文件中,我找到了对模型对象的引用。
我在全局 NHibernate 公共会话中使用本机 sql 查询,例如
string sql = @"update Accounts
set vchBranch = :branch,
bitIsActive = :isActive,
bitIsVisible = :isVisible
where bintId = :id";
ISQLQuery sqlQuery = HibernateUtil.GetCurrentSession().CreateSQLQuery(sql);
sqlQuery.SetBoolean("isActive", account.IsActive);
sqlQuery.SetBoolean("isVisible", account.IsVisible);
sqlQuery.SetInt64("id", account.Id);
sqlQuery.ExecuteUpdate();
这个查询的结果是 NHibernate 缓存的吗?
我找到了答案。它在 Nhibernate 会话中缓存结果对象。 在映射 XML-文件中,我找到了对模型对象的引用。