아래 스크린 샷에는 내 모델의 엔티티 (URL)가 나와 있습니다. ParentId 필드는 자체 참조 FK (Url.Id를 가리킴)입니다. 스크린 샷 하단에서이 탐색을 볼 수 있습니다.자체 참조 FK 이상하게 생성하기
내 SQL에서내가에서 EDMX를 생성 내 DB, 자기 참조 FK라고 FK_Urls_Parent :
-- Creating foreign key on [ParentId] in table 'Urls'
ALTER TABLE [Urls]
ADD CONSTRAINT [FK_Urls_Parent]
FOREIGN KEY ([ParentId])
REFERENCES [Urls]
([Id])
ON DELETE NO ACTION ON UPDATE NO ACTION;
내 질문
은 다음과 같습니다- 왜 EF가 그 하나의 FK에서 Urls1과 Url1을 생성 했습니까? Url1은 'FromRole'Urls1 인 0 또는 1 속성입니다. Urls1은 'FromRole'Urls 'ToRole'Urls1입니다. EF가 Url 테이블과 완전히 동일한 탐색 속성을 만드는 것처럼 보입니다. 왜 이렇게 할 것인가? 내가 원하는 것을 생성하기 위해 무언가를 할 수 있습니까? 원하는 탐색 속성 : Urls1?
- 좋아요, 그렇게 중요하지는 않지만, FK 이름이나 DB의 내용을 기반으로 Navigation 속성의 이름을 제어 할 수 있습니까? 나는 그것이 'Url1'이라는 이름을 싫어한다. 나는 'Parent'를 선호하지만, 모델을 재생성 할 때마다 디자이너에서 수동으로 변경하고 싶지는 않습니다.
감사합니다.
단일 상위 엔터티에 여러 자식이 있으므로 ChildUrls가됩니다. –
@Hightechrider 물론. 결정된. – jdmichal
설명해 주셔서 감사합니다. – Chad