Dan*_* T. 7 c# linq nhibernate transactions iqueryable
根据NHProf,不鼓励使用隐式交易:
http://nhprof.com/Learn/Alerts/DoNotUseImplicitTransactions
但是,NHibernate LINQ IQueryable<>在从数据库中读取对象时返回一个,这是懒惰的评估.我在存储库中有这个方法:
public IQueryable<T> GetAll<T>()
{
using (var transaction = _session.BeginTransaction())
{
var data = _session.Linq<T>();
transaction.Commit();
return data;
}
}
Run Code Online (Sandbox Code Playgroud)
这里的问题是该方法将在data评估之前提交事务.有没有办法使用存储库模式并保持IQueryable<>显式事务?或者读取操作是否可以使用隐式事务?
| 归档时间: |
|
| 查看次数: |
856 次 |
| 最近记录: |