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()
来创建副本,因为在枚举过程中从集合中删除项目时,大多数集合类都不喜欢它。