1

기본적으로 ImageMetadata 클래스에서 ImageMetadata 클래스이고 클래스에서 파생 된 클래스는 ImageMetadata에서 파생됩니다. Image은 실제로 이진 데이터를 포함하는 byte[] Content 속성 하나를 추가합니다. .FNH의 Automap을 사용하여 독립적 인지도 클래스를 파생했습니다.

<class name="ImageMetadata" ...>  
    <property name="Name" ... /> 
    < ... /> 

<class name="Image" ...>  
    <property name="Name" ... /> 
    <property name="Content" ... /> 
    < ... />   
: 내가 좋아하는 뭔가를 생산하는 FNH 오토을 조정하려는

는 내가 뭘 원하는 하나 테이블에이 두 클래스를 매핑하는 것입니다,하지만 난 절대적으로 걷어차 NHibernates '상속 지원이 필요하지 않습니다

모두 가능합니까?

Override<ImageMetadata>(m => m.Table("Image")) 

을하지만 여전히 ImageMetatada의 매핑에 <joined-subclass> 요소를 추가 :

는 현재 내가있다.

+0

"byte [] Content"오토 맵핑이 있습니까? 부동 소수점 배열과 비슷한 것을하고 싶었지만 IList 으로 속성을 정의해야했습니다. FNH의 버그가 수정 된 후 재정의하지 않고이 자동 매핑을 수행하지만 비효율적 인 것으로 입증되어 대안을 찾고 있습니다. –

답변

1

나는 완전히 확신하지는 않지만, subclassing strategy을 변경해야한다고 생각합니다. 그것은 기본적으로 하위 클래스 당 테이블로, 반면 당신이 원하는 것은 hierachy 당 테이블입니다.

나는 이렇게 생각한다

물론
AutoMap.AssemblyOf<Entity>() 
     .Setup(s => 
     { 
     s.SubclassStrategy = t => SubclassStrategy.Subclass; 
     }); 

, 당신은 당신이 원하는하지 않을 수있는, 다음 descriminator을 포함해야합니다. 아마 더 많은 FNH 경험을 가진 사람이 훨씬 더 나은 대답을 줄 수 있습니다.

비슷한 문제를 다루는 this post도 참조하십시오.