2
예를 들어, 나는 Order
을 가지며,이 순서는 필드의 값은 ICollection<ReserveItem>
입니다. 내가 지금 가지고있는 것은 :Entity Framework 및 CodeFirst 방식을 사용하여 부모 엔티티 값을 null로 설정하면 DB에서 관련 하위 엔티티를 어떻게 삭제할 수 있습니까?
주문 클래스
public class Order
{
...
public Reserve Reserve {get; private set;}
public void ClearReserve()
{
// Reserve.Items = null; or Resrver.Items.Clear()
Reserve = null;
}
}
준비 제도 이사회 (FRB) 클래스
public class Reserve
{
public ICollection<ReserveItems> Items {get; set;}
public DateTime ExpireDate {get; set;}
}
및 OrderRepository 클래스
public OrderRepository
{
...
public void ClearOrderReserve(Order order)
{
order.ClearReserve();
repostiry.InsertOrUpdate(order);
}
...
}
내
데이터베이스 컨텍스트 클래스의 16,
나는이 :
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
...
modelBuilder.Entity<Reserve>()
.HasMany(pr => pr.Items)
.WithRequired()
.WillCascadeOnDelete();
...
}
어떻게 제대로 Order.Reserve
필드를 삭제 OrderRepository.ClearOrderReserve(Order order)
방법 (가 null
가치의 설정) 및 삭제에 폭포가 데이터베이스에서 중복 ICollection<ReserveItem>
레코드를 제거하기 시작할 수 있습니다?
이미 문제를 해결했습니다. 감사합니다 ... – Dmytro