我需要add和&&或相同的查询
这是我的代码
var predicate = PredicateBuilder.True<Summon>();
if (!string.IsNullOrEmpty(param.id))
{
predicate = predicate.And(m => m.id== param.id);
}
if (!string.IsNullOrEmpty(param.subjects))
{
var subjectsPredicate = PredicateBuilder.False<Summon>();
string[] subjects = param.subjects.Split(',');
for (int i = 0; i < subjects.Length; i++)
{
subjectsPredicate = subjectsPredicate.Or(m => m.SubjectId ==subjects[i]);
}
predicate = predicate.And(subjectsPredicate);
}我的问题是,当主题存在时,我得到了一个错误,所有其他查询都工作得很好,只是这个“子查询”导致查询失败。
这是我的错误,如果主题存在的话。

发布于 2016-02-25 13:53:49
解决方案很简单-不在搜索查询subjects[i]上使用数组-不起作用
而不是写入
for (int i = 0; i < subjects.Length; i++)
{
subjectsPredicate = subjectsPredicate.Or(m => m.SubjectId ==subjects[i]);
}Neet to write
foreach (string key in subjects)
{
subjectsPredicate = subjectsPredicate.Or(m => m.SubjectId == key);
}https://stackoverflow.com/questions/35614096
复制相似问题