데이터베이스 'cable', 'cablewire'에 두 개의 테이블이 있습니다. 복합 키는 두 개의 필드 id1, id2에 대해 두 번째 테이블에 있습니다. id1은 첫 번째 테이블의 'cable_id'와 (외래 키 연관이없는) 많은 관계를 갖고 있습니다. 요점은 내 데이터베이스의 테이블 사이에 어떤 연관도 사용하지 않고 있으며 기본 키 필드가 자동으로 생성되지 않습니다. 복합 키 및 ID 지정이없는 테이블에 대한 여러 엔터티 삽입 - 엔터티 프레임 워크에서 잘못된 연산 예외가 발생했습니다
내가 기본 키 값을 수동으로주는 두 테이블에 데이터를 추가
은 ...cable newCable = new cable();
newCable.cable_id = newId;
newCable.wireCount = 5;
dbContext.Cables.Add(newCable);
dbContext.SaveChanges();
for(i=0; i<cable.wireCount; i++)
{
cableWire newCableWire = new cableWire();
newCableWire.id1 = newId;
newCableWire.id2 = newId + i + 1;
dbContext.CableWires.Add(newCableWire);
}
dbContext.SaveChanges();
내가 루프 반복의 후 SaveChanges를 호출
은, 여기에서 InvalidOperationException을 던지고 ...하고 .....나는 복합 키 (ID1 + ID2)이 두 기록에 차이가 있지만 .... 무슨 일이 잘못 알고하지 않습니다, 여전히 중복을 삽입 할 수 없습니다 말하고있다 엔티티 유형의 기본 키 값 ' 케이블 '. 누군가 내가 뭘 잘못했는지 도와주세요.
복합 키 필드 값을 명시 적으로 복제 할 수 없습니까? Entity Framework 5를 사용 중입니다
나는 그것을 시도했다. 그러나 같은 결과로 끝났다. .. –