如何使用DynamicLinq"包含“或”喜欢“与数字?

时间:2014-01-28 15:05:12

标签: linq dynamic-linq

试过这个:

.Where("MyColumnID.Contains(@0)", myArray)

但我得到的是:

  

“Int32”类型中没有适用的方法“包含”

还有其他方法吗?像 SqlMethods.Like ,但在DynamicLinq?

2 个答案:

答案 0 :(得分:2)

Contains()运算符以相反的方式工作:它是包含数字的数组,因此它应如下所示:

"@0.Contains(MyColumnID)"

但是,我不确定在DynamicLinq中是否可以实现这一点。另一个SO问题涉及同样的问题:

Query data using "Contains" keyword in Dynamic Linq in C#

它表明以下内容应该有效:

int[] CandidateIdsArray = new int[]{4, 78, 101}
var dynamicLinqQuery = 
    Candidates.Where("@0.Contains(CandidateId)", CandidateIdsArray);

答案 1 :(得分:0)

尝试一下

.Where("@0.Contains(MyColumnID)", myArray)