Entity Framework 7 : 익명 형식은 동일한 이름을 가진 여러 속성을 가질 수 없습니다.

entity-framework entity-framework-core

문제

과거에는 개발 컴퓨터간에 교환 할 때 Entity Framework에 문제가있었습니다 ( 1 , 2 , 3 ). 따라서 Entity Framework 7 RC1 Update 1을 사용하여 작업이 더 쉬워 졌는지 간단하게 확인하고 싶었습니다.

Azure 데이터베이스를 로컬로 복사 한 다음 DNX 명령을 사용했습니다.

dnx ef dbcontext scaffold "Server=MYDESK;Database=mydatabase;Trusted_Connection=True;" EntityFramework.MicrosoftSqlServer --outputDir Models

이로써 데이터 모델 클래스와 컨텍스트 클래스가 생성되었습니다. 나는 그걸 확인하고 다른 기계로 바꿔 코드를 체크 아웃했다. 새 컴퓨터에서는 Entity Framework 7에서 생성 된 코드에 오류가 발생하여 빌드하는 데 실패합니다.

dnx ef dbcontext scaffold "Server=MYDESK;Database=mydatabase;Trusted_Connection=True;" EntityFramework.MicrosoftSqlServer --outputDir Models

이 마지막 줄의 빌드 오류는 "익명 형식은 같은 이름의 여러 속성을 가질 수 없습니다"입니다. Entity Framework 7에서 빌드되지 않는 코드가 생성되는 이유는 무엇이며 어떻게 수정합니까?

수락 된 답변

이것은 알려진 버그 인 것 같습니다 : SQL Server 스캐 폴딩 은 "이름이 같지만 다른 테이블에있는 인덱스를 병합" 하여 인덱스 (rc1-final) # 3847에 대해 잘못된 익명 형식을 생성 합니다. 최근의 커밋에서 이정표 인 Entity Framework 7 RC2 ( 로드맵 )로 수정되었습니다.


인기 답변

오류가 분명합니다 .. 동일한 이름을 가진 여러 속성을 가질 수 없습니다 ... 마지막 줄을 아래로 변경하십시오.

    entity.HasIndex(e => new { 
                     CreatedAt = e.CreatedAt, 
                     Name2 = e.CreatedAt, 
                     Name3 = e.CreatedAt, 
                     Name4 = e.CreatedAt }).HasName("IX_CreatedAt");



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