4
EntityCollection.ToList().Clear()

不清除实体集合。知道为什么吗?

有什么解决办法吗?

我应该如何清除EntityCollection

4

2 回答 2

4

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

于 2012-05-02T05:45:37.650 回答
0

ToList()生成一个新列表(您正在清除它)。

于 2012-05-02T05:45:31.033 回答