2009-05-09 2 views
0

나는 라이브러리 내에 자신의 유창한 매핑 설정을 가지고있는 Recipient라는 클래스를 가진 라이브러리를 가지고있다.Fluent Hibernate 원래 클래스 파일없이 조인 된 서브 클래스 매핑하기

다른 프로젝트에서받는 사람으로부터 상속받은 SentEmail이라는 새로운 클래스를 만들었으므로 원래받는 사람 맵을 기반으로 새 매핑 클래스 파일을 만들 수 있기를 원합니다. 내가 사용할 원래 ClassMap 파일을 업데이트 할 수 있다면

JoinedSubClass ("ID", m =>MAPPING HERE);

그러나 원래 클래스 맵을 조정할 수 없기 때문에이 작업을 수행하는 방법에 관해서는 고심하고 있습니다.

누구나 아이디어를 갖고 있다면이 고양이를 쓸기위한 또 다른 방법이 있어야합니다.

이 또한 한 가지 내가 새로운 SentEmail 모델 클래스의 세부 사항의 일부를 언급하는 것을 잊었다

감사

UPDATE는받는 사람 테이블에 별도의 테이블에 저장됩니다.

답변

1

원래 매핑을 전혀 조정할 수 없다면 운이 없어진 것입니다. 그렇지 않은 경우 AddPart 메서드를 사용하여 JoinedSubClassPart이라는 별도 인스턴스를 추가 할 수 있습니다.

옆으로 : 디자인이 약간 특이하게 들립니다. SentEmail은 실제로 Recipient에서 상속되어야하는 것처럼 들리지 않습니다. SentEmail은 또는 SuccessfulRecipient에서 상속받습니다. Recipient; RecipientEmail은 두 가지 별도 개념입니다.

+0

좋은 점은 제임스 덕분입니다. 이메일보다받는 사람과 더 관련이 있기 때문에 이름이 RecipientEmailHistory가되도록 수정했습니다. 또한 파일에 대한 맵을 생성하는 것이 읽기 전용 클래스이기 때문에 불필요하다고 생각했습니다. 따라서 쿼리를 생성하고 NHibernate.Transform.Transformers.AliasToBean을 사용하여 새 모델로 변환합니다. 도움을 주셔서 감사합니다. –

관련 문제