두 개의 엔티티가 있습니다. 하나는 Site라고하고 다른 하나는 Assignment입니다. 사이트에는 관련 과제가있을 수도 있고 없을 수도 있습니다. 과제는 하나의 사이트에만 연결됩니다. C#의 측면에서 보면 Site에는 null 참조를 보유 할 수있는 Assignment 유형의 속성이 있습니다.Fluent NHibernate와 선택적 일대일 관계를 어떻게 매핑합니까?
나는 데이터베이스에서 같은 이름으로 두 개의 테이블을 가지고있다. 할당 테이블의 PK는 또한 Site 테이블에 대한 FK입니다 (Assignable을 가리키는 nullable FK가있는 Site가 아닌). 나는 내가이 작업을 얻기 위해에 재정의를 추가해야합니다 생각 유창함 자 NHibernate의 자동 지속성 모델을 사용하고
CREATE TABLE Site(
SiteId INT NOT NULL CONSTRAINT PK_Site PRIMARY KEY)
CREATE TABLE Assignment(
AssignmentId INT NOT NULL CONSTRAINT PK_Assignment PRIMARY KEY,
CONSTRAINT FK_Assignment_Site FOREIGN KEY (AssignmentId) REFERENCES Site (SiteId))
을 다음과 같이 (간결함을 위해 생략 필드)에 SQL이다. 내 질문은이 관계를 어떻게 매핑할까요? 이 시나리오에서도 내 스키마가 맞습니까? 필요한 경우 스키마를 변경할 수 있습니다.
수 있습니까? 나 테이블 정의를 줘? (테이블 이름, 관련 열, 키). 나는 당신의 설명에서 그것을 이해하지 못합니다. –
@Stefan, CREATE TABLE 문을 추가했습니다. 문제가 명확 해지기를 바랍니다. – gilles27