기본 FK의 이름을 바꾸려고 시도하고 있지만 코드 첫 마이그레이션은 다른 이름을 가진 동일한 테이블에 두 번째 FK를 계속 생성하여 테이블 스키마를 엉망으로 만듭니다.다른 이름으로 중복 된 FK를 생성하는 EF 마이그레이션
FK 모델에는 ID라는 PK가 있습니다. 클라이언트의 요구 사항을 그대로 유지하면서 Id (이름)의 이름을 변경하고 싶습니다.
1) 생성 마이그레이션 :
2) 매핑 :
어떻게해야합니까?
기본 FK의 이름을 바꾸려고 시도하고 있지만 코드 첫 마이그레이션은 다른 이름을 가진 동일한 테이블에 두 번째 FK를 계속 생성하여 테이블 스키마를 엉망으로 만듭니다.다른 이름으로 중복 된 FK를 생성하는 EF 마이그레이션
FK 모델에는 ID라는 PK가 있습니다. 클라이언트의 요구 사항을 그대로 유지하면서 Id (이름)의 이름을 변경하고 싶습니다.
1) 생성 마이그레이션 :
2) 매핑 :
어떻게해야합니까?
CorpoGestor
엔터티가 외래 키 속성을 노출하는 경우 Map
및 MapKey
대신 HasForeignKey
을 사용하십시오.
HasRequired(x => x.Conselho)
.WithMany()
.HasForeignKey(x => x.IdConselho);
또 다른 해결책 :
public class CorpoGestor
{
...
public int IdConselho { get; set; }
[ForeignKey("IdConselho")]
public virtual Conselho Conselho { get; set; }
}
경고 : 엔티티의 속성을 사용하여 개념적으로 너무 멋져요없는 대신 CorpoGestorMap
클래스의 관계를 매핑의, 재산에 ForeignKey
속성을 사용할 수 있습니다 EntityTypeConfiguration
매핑 클래스에 코드를 구현하는 것입니다. 왜냐하면 EF 클래스에 보관해야하는 데이터 레이어 코드로 엔티티를 오염시키고 있기 때문입니다.