比方说,我有用户对象的名单有两个属性:ID和名称列表(T)RemoveAll()不按预期工作......?
List<User> lst = List<User>();
我往里面放了一堆的用户。好的,现在我想使用RemoveAll()和这个函数来修剪我的列表。
private Boolean IsExisting(int id) {
//blah blah
return true;
//blah blah
return false;
}
所以我用这个语句:
gdvFoo.DataSource = lst.RemoveAll(t => IsExisting(t.ID));
这是我的理解是,只要IsExisting返回true,该元素应该从LST被删除,但会发生什么,奇怪的是它返回一个整数? ,而不是截断列表,并收到以下错误消息:
数据源是无效类型。它必须是一个IListSource,IEnumerable的,或者的IDataSource>
您可以尝试阅读RemoveAll http://msdn.microsoft.com/en-us/library/wdka673a.aspx的文档,该文档清楚地说明了它返回的内容并提供了如何使用它的示例。 – 2010-12-09 17:11:17