EF.Functions。包含多个关键字

时间:2019-03-18 21:02:28

标签: linq asp.net-core entity-framework-core

我需要搜索多个列(使用下面的||语句工作的LearningingModuleDesc和LearningModuleContent),但是我还需要搜索多个关键字。 .Net Core 2.2和EF Core不支持包含Contains的字符串数组(如下面的示例),但是有关如何进行此操作的一些指导非常有用。

string[] stringarray = new string[] { "mill", "smith" };

var results =  _context.LearningModules
.Where(x => EF.Functions.Contains(x.LearningModuleDesc, stringarray)
|| EF.Functions.Contains(x.LearningModuleContent, stringarray)
);

1 个答案:

答案 0 :(得分:0)

如果我理解正确,那么您正在寻找类似的东西

 var results = _context.LearningModules.Where(
   x => stringarray.Any(t => x.LearningModuleDesc.Contains(t)) || 
        stringarray.Any(t => x.LearningModuleContent.Contains(t)))