에 나는 레거시 데이터베이스와 일하고 있어요, 나는 다음과 같은 테이블이 있습니다NHibernate에 매핑 한 기본 키
Person ExternalFile
------ ------------
Id (int, PK) Key (string)
ConnectionId (int) Type (int)
Name (string) ConnectionId (int)
Firstname (string) Path (string)
Id (int, PK)
개인은 많은 외부 파일이 있습니다.
예는 주어진 :
Person A ExternalFile1 ExternalFile2
-------- ------------- -------------
Id: 1 Key: 'WN' Key: 'WN'
ConnectionId: 29 Type: 4 Type: 4
Name: 'Foo' ConnectionId: 29 ConnectionId: 29
Firstname: 'Bar' Path: 'C:/file1.txt' Path: 'D:/file2.txt'
Id: 1 Id: 2
나는이지도를 할 수있는 사용자가 ExternalFiles의 가방을 가질 수 있도록?
내 mappingfiles
ExternalFile :
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" namespace="Not.Relative" assembly="Not">
<class name="ExternalFile" table="tbl_externalfiles" lazy="false">
<id name="Id" column="`Id`">
<generator class="identity" />
</id>
<property name="Key" column="`CDKey`" />
<property name="ConnectionId" column="`KeyValue`" />
<property name="Type" column="`DocType`" />
<property name="Path" column="`Path`" />
</class>
</hibernate-mapping>
담당자 :
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" namespace="Not.Relative" assembly="Not">
<class name="Person" table="tbl_person" lazy="false">
<id name="Id" column="`Id`">
<generator class="identity" />
</id>
<property name="ConnectionId" column="`pairid`" />
<property name="Name" column="`name`" />
<property name="Firstname" column="`firstname`" />
</class>
</hibernate-mapping>
과 같을 것입니다 내 쿼리 :
SELECT *
FROM tbl_externalfiles
WHERE KeyValue = @p0
AND CDKey = @p1
AND DocType = @p2
@p0 = 29, @p1 = 'WN', @p2 = 4
그래서 나는에 3 개 개의 매개 변수를 제공해야 가방 fr 외부 파일에 톰 명,
1 : 사람의 ConnectionID
2 : 'WN'< - 항상 같은 (키)
3 : 4 < - 항상 같은 (유형)
복합 ID로 매핑 할 때이 기능이 여러 개 작동하지만이 경우 사용할 수 없습니다.
가방도 여기에 있습니까? 추가 쿼리를 사용하여 쿼리 기준을 사용하는 ExternalFiles를 가져와야합니다.
편집 :
는 내가 단지 connectionId
<bag name="Files" lazy="false">
<key column="KeyValue" property-ref="ConnectionId"/>
<one-to-many class="ExternalFile" />
</bag>
에 대해 다음 작업을 수행 할 수 있습니다 알고 있지만 내가 거기 aswell의 유형과 주요 매개 변수를 얻을하는 방법을 모르겠어요.
감사
작품이 완성보십시오! 감사. –
굉장! 나는 이것에 대해서 생각하지 않았다. –