Tôi có khung tổ chức EntityCollection
.Cách xóa một tập hợp con các mục khỏi Bộ sưu tập Khung thực thể
Tôi cần phải xóa tất cả các mục khớp với mệnh đề where đã cho từ cơ sở dữ liệu. Đây là mã hiện tại của tôi:
// Perform the deletes
foreach (var deleteReq in order.Requirements.Where(x=>!orderContract.Requirements.Any(y=>y.RequirementId==x.RequirementId)))
{
order.Requirements.Remove(deleteReq);
}
Về cơ bản tôi đang cố gắng để loại bỏ bất cứ điều gì từ bộ sưu tập order.Requirements đó không phải là trong bộ sưu tập orderContract.Requirements (kết hợp trên một Id).
Như bạn có thể đoán, mã này ném và ngoại lệ vì tôi đang sửa đổi bộ sưu tập mà tôi đang lặp lại.
Thông thường tôi chỉ sử dụng RemoveAll()
nhưng EntityCollection
không hỗ trợ phương thức đó.
Vậy ... Làm cách nào để xóa tất cả các bản ghi mà tôi cần?
Tại sao bạn không thể thu thập các mục có thể tháo rời trong danh sách? kích thước bộ sưu tập lớn? –