小编crm*_*ain的帖子

有没有更好的方法使用c#从列表中删除元素?

我有一个对象列表。如果任何一个属性相等,null我希望将整个元素从列表中删除。有没有比我下面有的更好的方法了。

我已经尝试了每个循环,但要么不知道该怎么做,要么不完全了解如何完成任务。

var i = 0;

while (i < filterCriterias.Count())
{
    if (filterCriterias[i].ColumnName == null 
        || filterCriterias[i].Comparator == null 
        || filterCriterias[i].Criteria == null)
    {
        filterCriterias.RemoveAt(i);
    }
    else
    {
        i++;
    }
}
Run Code Online (Sandbox Code Playgroud)

因此,如果我有以下列表:

List<Order> orders = new List<Order> 
{
    new Order {ColumnName = null, OperantOrder = null},
    new Order {ColumnName = Session, OperantOrder = ASC},
    new Order {ColumnName = null, OperantOrder = null},
}
Run Code Online (Sandbox Code Playgroud)

我只希望列表仅包含元素1,其中columnName = session和operantorder = asc。

c# list

3
推荐指数
1
解决办法
74
查看次数

标签 统计

c# ×1

list ×1