Tôi có phương pháp sau, tôi muốn xóa các mục khỏi bộ sưu tập của mình khớp với Id sản phẩm. Có vẻ khá thẳng về phía trước, nhưng tôi nhận được một ngoại lệ. Về cơ bản, bộ sưu tập của tôi không được đồng bộ hóa. Vì vậy, cách tốt nhất để loại bỏ một mục từ một bộ sưu tập là gì.xóa các mục khỏi Danh sách chung <t>
public void RemoveOrderItem(Model.Order currentOrder, int productId)
{
foreach (var orderItem in currentOrder.OrderItems)
{
if (orderItem.Product.Id == productId)
{
currentOrder.OrderItems.Remove(orderItem);
}
}
}
Chi tiết ngoại lệ: System.InvalidOperationException: Bộ sưu tập đã được sửa đổi; hoạt động điều tra có thể không thực thi
cảm ơn conrad, thật lạ là tôi không thể đưa lamda vào làm việc. Nó không nhận ra phần "x.Product.Id". Strange cos các công trình sau đây var truy vấn = từ x trong currentOrder.OrderItems nơi x.Product.Id == productId select x; Loại bộ sưu tập là ISet. – frosty
ok, tôi đã trả lời câu hỏi của riêng mình :) Tôi đã thay đổi điều này thành Danh sách –
frosty