【发布时间】:2015-02-26 06:13:21
【问题描述】:
我有一个对象列表(下面查询中的 rList)。每个对象(下面查询中的 v)内部都有 6 个字符串对象。我需要查询每个属性并将值更改为 null 如果它等于某个字符串。
有没有比执行 6 个不同的 linq 查询更简单的方法(即:对 6 个属性中的每一个属性中的一个)?
foreach (var v in rList.Where(ppe => ppe.Property1 != null
&& (ppe.Property1.Equals(warning1, StringComparison.OrdinalIgnoreCase)
|| ppe.Property1.Equals(warning2, StringComparison.OrdinalIgnoreCase)
|| ppe.Property1.Equals(warning3, StringComparison.OrdinalIgnoreCase))))
{
ppe.Property1 = null;
}
【问题讨论】:
-
v.property1 = null;您可以使用复杂的 where 子句在一个查询中执行此操作。您可以创建警告列表并使用包含
-
@GiorgiNakeuri 他需要有条件地清空某些值,而不是无条件地清空所有值。
-
这只是为了让它更容易(这是有效的)还是因为它的大小而遍历
rList六次有问题?