试过这个:
.Where("MyColumnID.Contains(@0)", myArray)
但我得到的是:
“Int32”类型中没有适用的方法“包含”
还有其他方法吗?像 SqlMethods.Like ,但在DynamicLinq?
答案 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)