다음 모델이 있습니다.EF 코드 ID 열이있는 첫 번째 부모 - 자식 삽입
class Parent
{
int ParentId (identity column) { get; set; }
string ParentName { get; set; }
virtual ICollection<Child> Children { get; set; }
}
class Child
{
int ChildId (identity column) { get; set; }
string ChildName { get; set; }
int ParentID { get ; set; } //foreign key to Parent(ParentID)
}
단일 트랜잭션으로 부모와 자식에게 몇 개의 행을 삽입하려면 어떻게합니까? 기본적으로 부모 (내가 부모에 행을 삽입) 및 해당 값을 가진 자식 행을 삽입 생성 된 신원을 얻고 싶어? 코드 우선을 사용하여 어떻게 달성 할 수 있습니까?
'SaveChanges' 및'dbContext.Parents.Add (parent) '를 사용 했습니까? –
@ 라디 슬라브 - 예, 예, 답장을 수정했습니다. 감사합니다. 내가 대답했을 때 작업 단위 구현을보고있었습니다. 혼란 스러웠습니다. –
엔티티 프레임 워크는 먼저 부모와 자식을 삽입합니다. 'parent-> newly_created_parent_id'에 삽입하고'자식 (..., parent_id) 값 (..._ 새로 생성 된 부모 _id)'에 삽입하십시오. 나는 이것을 테스트했고 당신이 말한 것처럼 작동하지만, 나는이 동작을 기술 한 문서를 찾고있다. 또는 문서화 (msdn)하기에 너무 논리적입니까? – broadband