【发布时间】:2010-09-30 17:34:33
【问题描述】:
我使用这个 approuch http://www.kevinwilliampang.com/2010/04/06/setting-up-asp-net-mvc-with-fluent-nhibernate-and-structuremap/ 来设置带有结构映射的 fnh,但是在一个请求之后我得到以下异常
会话已关闭! 对象名称:'ISession'。
说明:在执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。
异常详细信息:System.ObjectDisposedException:会话已关闭! 对象名称:'ISession'。
我的存储库类如下所示:
public class Repository : IRepository {
private readonly ISession _session;
public Repository(ISession session) {
_session = session;
}
public T Get<T>(Expression<Func<T, bool>> predicate) {
return _session.CreateCriteria(typeof(T)).Add(predicate).UniqueResult<T>();
}
我在结构图中注册我的存储库,如下所示:
public class RepositoryRegistry : Registry {
public RepositoryRegistry() {
Scan(a => {
a.AssembliesFromApplicationBaseDirectory();
a.AddAllTypesOf<IRepository>();
});
}
}
如何防止会话被关闭?
【问题讨论】:
标签: fluent-nhibernate structuremap