【发布时间】:2018-07-11 22:05:22
【问题描述】:
编辑我的问题:
IQueryable<dbJob> dbjobs = from a in TableA
join b in TableB on a.ID equals b.ID
where a.Attribute == X &&
a.Attribute == Y &&
a.Attribute == Z
select b;
这是基本查询,它工作正常。我想要类似的查询,但不是硬编码值(X、Y 和 Z),我有字符串列表,列表大小可以是 1、2 或 3 或 10。
【问题讨论】:
-
只需检查
a.Attribute是否在您的列表中包含...您可能还想考虑对此类事情使用方法语法,它非常 更易于阅读,更适合语言 -
不应该还是?
-
当你执行包含时,它是一个 OR。我想要和
-
"当你做包含时,它是一个 OR。我想要 AND" 一个字符串怎么可能是多个字符串?假设您的属性是“steve”,而您的字符串列表是“steve”、“sally”、“heather”。检查
"steve" == "steve" && "steve" == "sally" && "steve" == "heather"没有任何意义。除非您的字符串列表是一堆重复项,否则您的属性无法匹配列表中的多个字符串,但是列表的意义何在?