을 사용하여 상위 개체 및 부모 (부모 부모 외래 키)의 목록을 모두 저장 아래 코드는 SalesOrder 테이블에 Sales Orders를 저장하고 SalesOrderDetail 테이블에 Sales Order Details를 자동 저장합니까?EF
내 목표는 내 기본 엔티티의 목록을 만들고 네비게이션 속성을 사용하여 다른 목록을 만들어 한꺼번에 저장할 수있게하는 것입니다.
List<SalesOrder> salesOrders = new List<SalesOrder>()
{
new SalesOrder()
{
OrderDate = DateTime.Now,
OrderDetails = new List<SalesOrderDetail>()
{
new SalesOrderDetail() { ItemId = 1 },
new SalesOrderDetail() { ItemId = 2 },
new SalesOrderDetail() { ItemId = 3 }
}
},
new SalesOrder()
{
OrderDate = DateTime.Now,
OrderDetails = new List<SalesOrderDetail>()
{
new SalesOrderDetail() { ItemId = 1 },
new SalesOrderDetail() { ItemId = 2 }
}
}
};
_context.SalesOrders.AddRange(salesOrders);
_context.SaveChanges();
또는 내가 좋아하는 뭔가를해야 할 것입니다 :
아래를 참조하십시오
_context.SalesOrders.AddRange(salesOrders);
_context.SalesOrderDetails.AddRange(salesOrders[0].OrderDetails);
_context.SalesOrderDetails.AddRange(salesOrders[1].OrderDetails);
_context.SaveChanges();
코드를 실행하고 작동하는지 확인하십시오. –
@ ZivWeissman의 충고가 가장 좋습니다. 실험! 그러나, 안락 의자 (생각할 것없이 실험을하지 않고) 관점에서. 왜 이것이 효과가 있을지 모르겠다. EF는 속성을 사용하여 엔티티를 연결합니다. EF는 SQL 조인 조건과 같습니다. SalesOrders 나 SalesOrderDetails 모두 관련 엔티티에 연결해야하는 정보가 제공되지 않았습니다. EF가 두 엔티티를 실제로 연결하는 방법을 보여주는 답을 보여주는 예를 게시 할 것입니다. – DWright