EntityCollection.ToList().Clear()
不清除实体集合。知道为什么吗?
有什么解决办法吗?
我应该如何清除EntityCollection
?
EntityCollection.ToList().Clear()
不清除实体集合。知道为什么吗?
有什么解决办法吗?
我应该如何清除EntityCollection
?
因为ToList()
将 EntityCollection 的副本创建为 a List<T>
,然后您只需清除该列表而不是其EntityCollection
本身。
编辑1:使用Clear()
EntityCollection中的方法: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()
生成一个新列表(您正在清除它)。