2009-04-30 2 views
0

this question 나는 테이블의 기본 키에서 구성된 엔티티를 매핑하기 위해 열렬히 대답했습니다. 이 그래서 주어진 다음 "LdapUser"에하고 "aspnet_Users"의 경우Fluent Nhibernate 구성된 엔티티, 부모 키 지정

public UserMap() 
{ 
    WithTable("aspnet_Users"); 
    Id(x => x.Id, "UserId") 
     .GeneratedBy.Guid(); 
    Map(x => x.Name, "UserName"); 
    Map(x => x.Login, "LoweredUserName"); 
    WithTable("LdapUsers", m => { 
      m.Map(x => x.FullName, "FullName"); 
      m.WithKeyColumn("UserId"); 
    }); 
} 

everithing 작동 "사용자 아이디"라는 이름의 열이 있습니다.

무효 외래 키 테이블의 열 이름과 주 테이블의 키 열 이름을 모두 pk가 아니므로 지정하려면 다른 열을 사용하여 조인을 수행하십시오.

답변

0

NHibernate에서 현재 지원되지 않는 것처럼 보입니다. NHibernate의 JIRA에는 open issue이 있습니다. 사실, 이것은 컬렉션을위한 것이라고 생각하지만 아마도 당신이하고있는 일에도 적용될 것입니다. 기본 키 대신 참조하려는 속성을 가리키는 <key> 요소에 property-ref 특성을 추가하는 것이 좋습니다.

아마도 변경 사항은 이미 NHibernate 2.1.0의 Alpha2 릴리스에서 사용할 수 있습니다. 물론, NH2.1이 FNH에 추가되기 전에 일반 릴리스 이후 언젠가 될 수 있습니다. 가능한 경우 Alpha2 릴리스를 얻고 상황에 따라 시도해 보는 것이 좋습니다. 작성한 엔티티, 콜렉션에서만 작동하지 않는다면 JIRA에서 다른 이슈를 제출하여 추가 할 수 있습니다.