0
谢谢你清除我的疑问RadimKöhler。真的,你救了我。我一直试图了解这一点几天。所以我在错误的方向思考,我应该理解它的调试模式。 这是您发给我的回复在开始观察调试窗口中的任何对象之前,请调用:session.Clear()。从那一刻起,只有已经加载的东西将在稍后提供。 所以,在调试窗口中,我们现在应该看到一些有关延迟加载失败的例外...不能理解NHibernae懒惰加载
正如您所说,我在代码中添加了session.Clear(),但找不到异常。
在哪里保持session.Clear()?如果可能的话请编辑我的代码。我的代码是这样
public class EntityUserDetails:IUserDetails
{
private ISession _session;
public EntityUserDetails(ISession session)
{
_session = session;
}
public bool GetUserDetails(string userId,string password)
{
var user = (from userDetails in _session.Query<UserDetails>()
where userDetails.UserId == userId && userDetails.Password == password
select userDetails);
//_session.Clear();
foreach (var get in user)
{
}
return false;
}
}
只是尝试访问'user.Products'因为**用户** *(的UserDetails的实例)*被延迟加载*([根据你的映射(http://stackoverflow.com/q/26998748/ 1679310))* - 应抛出异常 – 2014-11-21 07:11:56