EF7 (Core)에서 동일한 테이블에 대해 여러 관계를 만들려면 어떻게해야합니까?

c# entity-framework-core

문제

마이그레이션을 만들려고하는데 다음과 같은 클래스에 걸림돌이됩니다.

public class Unit
{
    public int UnitID { get; set; }
    ...
    public Nullable<int> PreviousUnitID { get; set; }

    [ForeignKey("PreviousUnitID")]
    public Unit PreviousUnit { get; set; }

    public Nullable<int> SubsequentUnitID { get; set; }

    [ForeignKey("SubsequentUnitID")]
    public Unit SubsequentUnit { get; set; }
}

"동일한 이름의 탐색 속성이 이미 엔티티 유형 'Unit'에 있으므로 '탐색 속성'을 '엔티티 유형' '단위'에 추가 할 수 없습니다.

나는이 약간 독특한 항법이 비난하는 것임을 확신하고 있으므로 나머지 수업은 생략했습니다. 누구든지이 문제를 회피 할 수있는 방법을 알고 있습니까?

감사!

수락 된 답변

이것은 RC1의 알려진 문제점입니다.

발행물:

개발 체인 : https://github.com/aspnet/EntityFramework/pull/4239

rowanmiller 님이 1 월 8 일에 댓글을 남겼습니다.

# 4069는 야간 빌드에서 수정되며 RC2로 출시됩니다.


인기 답변

가상 키워드 사용 :

public virtual Unit PreviousUnit { get; set; }
public virtual Unit SubsequentUnit { get; set; }

전체 코드 :

public virtual Unit PreviousUnit { get; set; }
public virtual Unit SubsequentUnit { get; set; }

이것은 유닛의 게으른 로딩을 가능하게합니다.

편집 : 어쩌면이 또한 도움이 될 수 있습니다 : https://github.com/aspnet/EntityFramework/issues/3911




아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.
아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.