Ho una struttura di entità EntityCollection
.Come rimuovere un sottoinsieme di elementi da una raccolta di Entity Framework
Devo cancellare tutti gli elementi che corrispondono a una data clausola dal database. Questo è il mio codice esistente:
// Perform the deletes
foreach (var deleteReq in order.Requirements.Where(x=>!orderContract.Requirements.Any(y=>y.RequirementId==x.RequirementId)))
{
order.Requirements.Remove(deleteReq);
}
Fondamentalmente sto cercando di rimuovere qualsiasi cosa dalla raccolta order.Requirements che non è nella collezione orderContract.Requirements (corrispondenti su un Id).
Come si può intuire, questo codice genera ed eccezione perché sto modificando la raccolta che sto iterando.
Normalmente userei solo RemoveAll()
ma lo EntityCollection
non supporta questo metodo.
Quindi ... Come posso eliminare tutti i record necessari?
Perché non è possibile raccogliere elementi rimovibili in un elenco? la dimensione della collezione è grande? –