2009-08-29 4 views
-2

나는 이제 NHibernate를 시작하고 온통 블로그와 기사를 읽고있다. 많은 사람들이 제네릭 형식에 대해 session.Get <> 메서드를 참조하지만이 방법은 사용할 수 없습니다. 나는 session.Get (Type 클래스, object id) 메소드만을 얻는다.NHibernate와 generic 버전

왜 이런가요? 참조가 누락 되었습니까? 또는 내가 사용하고있는 NHibernate 버전과 관련이있다. WIH는 NHIbernate입니다. 2.1.0

답변

1

다음 정의가 주어지면, 그것들은 ISession 인터페이스에 의해 구현됩니다. 어느 것이 당신이 ISession을 구현하는 객체를 가질 때마다 당신은 두 가지 방법을 모두 가져야한다는 것을 의미합니다.

namespace NHibernate 
{ 
    public interface ISession : IDisposable 
    { 
     ... 
     T Get<T>(object id); 
     object Get(string entityName, object id); 
    } 
} 

NHibernate assembly의 최신 버전을 사용 하시겠습니까?

+0

오늘 밤 최신 버전을 다운로드했습니다. this is mye exmaple code : 공용 사용자 GetByPersonId (Guid personId) { ISessionFactory sessionFactory = (새 구성()) Configure(). BuildSessionFactory(); 세션 세션 = sessionFactory.OpenSession(); return (Person) session.Get (typeof (Person), personId); } 내가 액세스 할 수있는 유일한 .get 메소드입니다. 나는 단지 NHibernate.dll을 참조했다. – Kulvis