我正在尝试在实体查询中执行LIKE子句。我见过的examples使用动态linq来做这种事情,但是我的代码...
var query = context.StudySet
.Where("it.PatientName LIKE @patientName", new ObjectParameter("patientName", patientName);
...给我一个System.Linq.Dynamic.ParseException与
Additional information: Expression of type 'Boolean' expected
context是EF 6代码优先的DbContext,PatientName是字符串
请告诉我代码有什么问题?
最佳答案
如果要使用DynamicLINQ,则需要像这样更改代码
var query = context.StudySet.Where("it.PatientName.Contains(@0)", patientName);
因为DynamicLinq无法解析
LIKE
运算符关于linq - 动态Linq将LIKE添加到where子句,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23572277/