使用 linq 根据多个可能值之一检查 属性
Using linq to check property against one of multiple possible values
使用 linq 根据多个可能值之一检查 属性。在这种情况下,当状态为 2 或 3 时?这可以在没有 or 运算符的情况下完成吗?
var x = (from b in books
where b.statusCode.Contains(2, 3))
select new ...
您可以将值列表设置为 List<int>
,将其命名为 ValueList
,然后在您的 where 行上:
where ValueList.Contains(b.statusCode)
这应该将 statusCode
与所有列表值和 return 匹配的记录进行比较,您将获得动态列表的好处,该列表可以用不同的值重置为 return 其他状态码的集合。
可以这样做(假设statusCode是int)
var values = new int[] { 2, 3 };
var x = (from b in books
where values.Contains(b.statusCode))
select new ...
或者您可以尝试像这样内联它:
var x = (from b in books
where (new int[] { 2, 3 }.Contains(b.statusCode)))
select new ...
使用 linq 根据多个可能值之一检查 属性。在这种情况下,当状态为 2 或 3 时?这可以在没有 or 运算符的情况下完成吗?
var x = (from b in books
where b.statusCode.Contains(2, 3))
select new ...
您可以将值列表设置为 List<int>
,将其命名为 ValueList
,然后在您的 where 行上:
where ValueList.Contains(b.statusCode)
这应该将 statusCode
与所有列表值和 return 匹配的记录进行比较,您将获得动态列表的好处,该列表可以用不同的值重置为 return 其他状态码的集合。
可以这样做(假设statusCode是int)
var values = new int[] { 2, 3 };
var x = (from b in books
where values.Contains(b.statusCode))
select new ...
或者您可以尝试像这样内联它:
var x = (from b in books
where (new int[] { 2, 3 }.Contains(b.statusCode)))
select new ...