이것은 나를 미치게 만들고 오류는 나에게 매우 의미가 없습니다.
EntitySet 'TableB'에 DefiningQuery가 있고 현재 작업을 지원하는 요소가 요소에 없기 때문에 업데이트 할 수 없습니다.
내 테이블은 다음과 같이 배치됩니다.
TableA int idA (ID, 기본 키) ... TableB int idA (TableA.idA의 경우 FK) int val
TableB에는 SQL 서버에 정의 된 기본 키가 없습니다. Entity Framework는 테이블과 연결을 가져오고 두 필드를 키로 설정했습니다. 그러나 테이블에 삽입을 시도하면 해당 오류가 출력됩니다!
뭐가 문제 야??
편집 : Alex가 제안한대로 해결책은 다음과 같습니다.
- edmx 파일을 마우스 오른쪽 버튼으로 클릭하고 다음으로 열기, XML 편집기를 선택하십시오.
- edmx : StorageModels 요소에서 엔티티를 찾습니다.
- DefiningQuery를 완전히 제거하십시오.
- store : Schema = "dbo"의 이름을 Schema = "dbo"로 변경합니다 (그렇지 않으면 코드에서 이름이 유효하지 않다는 오류가 생성됨).
- store : Name 속성 제거
두 열이 모두 키의 일부라는 것이 괜찮 았기 때문에 키를 그대로 두었습니다.