Je possède la méthode suivante, je souhaite supprimer les éléments de ma collection qui correspondent à l'ID du produit. Semble assez simple, mais je reçois une exception. Fondamentalement, ma collection est en train de se désynchroniser. Alors, quelle est la meilleure façon de supprimer un élément d'une collection.supprimer des éléments d'une liste générique <t>
public void RemoveOrderItem(Model.Order currentOrder, int productId)
{
foreach (var orderItem in currentOrder.OrderItems)
{
if (orderItem.Product.Id == productId)
{
currentOrder.OrderItems.Remove(orderItem);
}
}
}
Détails d'exception: System.InvalidOperationException: la collection a été modifiée; l'opération d'énumération peut ne pas s'exécuter.
merci conrad, bizarrement, je ne peux pas obtenir le lamda pour travailler. Il ne reconnaît pas la partie "x.Product.Id". Étrange cos les travaux suivants var query = de x dans currentOrder.OrderItems où x.Product.Id == productId select x; Le type de collection est ISet. – frosty
ok, j'ai répondu à ma propre question :) Je l'ai changé à la liste –
frosty