2014-03-03 2 views
0

간단한 쿼리이지만 내 인생에서 nhibernate 2.X를 사용하여이를 수행하는 방법을 알 수는 없습니다.Nhibernate : 동일한 테이블에 조인 된 결과를 반환하십시오.

같은 테이블에 조인하는 간단한 SQL 쿼리가 있다고 가정 할 때 개체 목록을 반환하려면 어떻게해야합니까?

select primary_details.*, 
     secondary_details.*, 
from  details primary_details 
     JOIN details secondary_details 
     ON primary_details.ID = secondary_details.ID; 

지금 분명히 내가 중복 동일한 데이터의 결과 집합을 얻을하지 않습니다 적용하는 다른 기준이있다,하지만 난 내 질문에 그것을 단순화했습니다.

내 세부 정보 세부 정보에서 선택 만하면 도메인 및 매핑이 잘 작동하지만 보조 입력란에 대한 primary_details의 열을 차트로 표시 할 수 있도록 데이터가 결합 된 결과 집합이 필요합니다.

모든 아이디어를 얻을 수 있습니다. 솔루션이라도 nhibernate의 외부를 어떻게 든 처리하는 것이기도합니다.

<class name="details" table="details" lazy="true" schema-  
action="none"> 
<id name="ID"> 
    <column name="ID" sql-type="varchar(32)" /> 
</id> 
<property name="Name"> 
    <column name="Name" not-null="false" /> 
</property> 
<property name="Value"> 
    <column name="laboratory_id" not-null="false" /> 
</property> 
</class> 

건배

+0

을 얻고있는거야? 아니면 전혀 행을 반환하지 않습니다? –

+0

분명히 존재하지 않기 때문에 secondary_details의 열을 도메인에 매핑 할 수 없습니다. 어떻게 내가이 문제에 접근 할 수 있을지 생각해? – AllStar11

+0

한 번 참여하거나 반복적 인 트리 같은 가져 오기를 수행 하시겠습니까? 당신은 또한 당신에게 작은 객체 코드 샘플을 추가 할 수 있습니까? –

답변

0

보십시오이 :

은 매핑 파일을 무식 오류 메시지가 무엇을

var session.CreateSQLQuery("select {pd.*}, {sd.*}, from details pd JOIN details sd ON pd.ID = sd.ID").AddEntity("sd", typeof(details)).AddEntity("pd", typeof(details)).List<details>(); 
관련 문제