3

내 데이터베이스에 [User] 테이블과 [Salesperson] 테이블이 있습니다. [Salesperson]은 고유 한 UserID를 정의하고 [User] .UserID와 외래 키를 매핑합니다. Entity Framework를 사용하여 모델을 생성 할 때 [User] - [Salesperson] 사이에 일대 다 관계가 생깁니다. 즉, 각 사용자는 "Salesperson 컬렉션"을 갖지만, 원하는 것은 0..1-to -1 관계 각 사용자가 "Salesperson"에 대한 nullable 참조를 갖는 경우.Entity Framework - 관계 변경 다중성

XML을 사용하여 관련 설정을 변경하려고 시도했지만 빌드 오류 만 발생했습니다. 내가 달성하고자하는 것은 [Salesperson] .SalespersonID를 참조하는 [User]의 nullable SalespersonID를 갖는 것과 다르지 않지만 영업 사원은 특정 [User] 테이블 구조를 muddying하는 것처럼 느껴지는 특정 사용자에 대해서만 존재하기 때문에 관계를 가져 와서 Entity Framework에서 올바른 방법을 지적하십시오.

관계의 다양성을 변경하려면 무엇이 있습니까?

+0

좀 더 자세한 정보를 제공해 줄 수 있습니까? ORM은 무엇입니까? 현재 설정은 어떤 모습입니까? –

+0

당신이 무엇을 요구하는지 모르겠습니다. Entity Framework를 MySQL 데이터베이스와 함께 사용하고 있습니다. "config"는 무엇을 말하고 있습니까? –

+0

오, 미안 해요, 당신이 엔티티 프레임 워크를 말했을 때, 당신은 객체 관계형 매퍼에 대한 일반적인 용어를 사용하고 있다고 생각했습니다. 특정 제품이 아닙니다. –

답변

2

Salesperson 자체의 PK를 User으로 만듭니다. PK가 유일하기 때문에 EF의 GUI 디자이너는 카디널리티를 올바르게 가져옵니다.

+0

원하는 경우 SalespersonId라고 할 수 있지만 FK Salesperson.SalespersonId == User.UserId로 인해 호출됩니다. GUI 설계자는 올바른 카디널리티를 추론 할 수 있고 DB가이를 적용 할 것이다. –

+0

아직 테스트하지는 않았지만 일단 답을 표시합니다 (작동한다고 가정). 엄청 고마워. :) –

+0

재생산하기 전에 기존 관계가 있었습니까? 새 테이블에서 사용해보십시오. 이것은 * 우리를 위해 * 작동합니다. 또한 User.UserId가 PK가 아닌 경우 PK로 시도하십시오. EF의 GUI 설계자가 고유 제한 조건이 아닌 PK를 볼 수 있습니다. –

관련 문제