2011-04-11 4 views

답변

0

각 하위 클래스에 대해 하나의 테이블이있는 경우 판별 자의 이름이 테이블 이름이 아닙니다. 즉, 테이블 당 유형이 하나만있는 경우 판별자를 지정할 필요가 없습니다.

+0

ORM에는 열이 필요하지 않을 수 있지만 편의상 테이블의 자동 'discriminator'열을 사용하여 쿼리를 특정 하위 클래스 유형으로 제한 할 수 있습니다. 또한 내가 원하는 것은 [지원되는 전략] (http://knol.google.com/k/nhibernate-chapter-8-inheritance-mapping#8 (2E) 1 (2E) 3 (2E) (C2) (A0) Table_per_subclass (2C) _using_a_discriminator) NHibernate에서,하지만 난 그냥 유창하게하는 방법을 볼 수 없습니다. – Matt

1

비슷한 문제가 있습니다. 지금까지 내가 생각할 수있는 유일한 옵션은 기본 클래스에 속성을 추가하고 해당 집합 작업을 보호하는 것입니다. 그런 다음 기본을 상속하는 모든 클래스는 해당 속성을 생성자에 설정합니다. 지금까지 나는 더 좋은 길을 찾지 못했습니다.

내 경우에는 기본 클래스를 참조하는 클래스가 있고 해당 참조의 하위 클래스 유형을 쿼리하고 쿼리에서 필터를 사용하지만 방금 제안했던 것과는 별개의 방법이 없습니다.

관련 문제