2009-12-28 4 views
4

나는 시도하고 사용 ID로 엔티티를로드 아무 것도 발견되지 않으면 왜 Session.Load <User> (id)가 null을 반환하지 않습니까?

Session.Load<User>(21); 

은 내가 '주어진 식별자에는 행이 존재하지 않는'얻을. 내가 좋아하는 널 (null)을 검사 한 내 코드에서

:

if(user == null) 

가 어떻게 행이 존재하지 않았다 알고 가정이다, 또는 내가 대신 null을 반환하는 방법을 만들 수 있습니까?

답변

7

실제로 데이터베이스로 왕복하지 않기 때문에. 당신은 실제로 NHibernate가 실제로 존재하는지 알 수 없도록 게으른 로딩을위한 프록시를 얻고있다. 당신이 정말로 존재하는지 알고 싶다면, 당신은 사용해야합니다

var entity = Session.Get(21) 
+1

내가 그 일을하고있다 : 만일 Session.load (ID)를 반환; 죄송합니다. 오케이 그냥 GET을 썼습니다. 감사! – mrblah

관련 문제