[英]Linq to EF .Clear() does not clear
EntityCollection.ToList().Clear()
不清除實體集合。 知道為什么嗎?
有解決方案嗎
我該如何清除EntityCollection
?
因為ToList()
創建EntityCollection的副本作為List<T>
然后您只清除該列表而不是EntityCollection
本身。
編輯1:使用EntityCollection中的Clear()
方法: http : //msdn.microsoft.com/de-de/library/bb302707.aspx
編輯2:哦,我明白了。 所以這是這個類: http : //msdn.microsoft.com/de-de/library/ff422654(v = vs.91).aspx ? 似乎你必須枚舉所有項目並逐個刪除它們。
foreach( var item in EntityCollection.ToList() )
EntityCollection.Remove(item);
在這里,你需要ToList()
來創建一個副本,因為當你在枚舉期間從它們中刪除項目時,大多數集合類都不喜歡它。
ToList()
生成一個新列表(您正在清除它)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.