鉴于:
string removeRows = "";
int i = 0;
foreach (var row in userStats)
{
if (row.OrderRow.RegistrationType == "Want Removed")
{
removeRows = removeRows + i.ToString() + ",";
}
i++;
}
Run Code Online (Sandbox Code Playgroud)
什么是Lambda语法来执行删除?
据我所知,您的代码收集要删除的行的索引,并形成一个逗号分隔的字符串.它实际上并没有删除这些项目,所以我不知道你为什么要这样做.
如果userStats是List<T>地方T是你的行类型,您可以使用RemoveAll方法,其实去除符合给定条件的所有项目:
userStats.RemoveAll (r => r.OrderRow.RegistrationType == "Want Removed");
Run Code Online (Sandbox Code Playgroud)
我认为你的代码滥用字符串,你们都使用它们来收集索引和注册类型.我想知道是否RegistrationType可能是一个枚举:
enum RegitrationType {
ShouldBeRemoved,
// add other types here
}
userStats.RemoveAll (r =>
r.OrderRow.RegistrationType == RegitrationType.ShouldBeRemoved);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2554 次 |
| 最近记录: |