Entity framework core EF Core无法转换多个Like查询

Entity framework core EF Core无法转换多个Like查询,entity-framework-core,Entity Framework Core,我有一个DbSet Persons和字符串[]名称 我正在尝试使用多个名称进行查询,例如: db.Where(o => Names.Any(p => EF.Functions.Like(o.Name, p))) 我不断得到“无法翻译。请以可以翻译的形式重写查询,或者通过插入对AsEnumerable()、AsAsAsAsyncEnumerable()、ToList()或ToListSync()的调用显式切换到客户端计算” 我想在sql server上执行此操作,因此无法对其进行评估

我有一个DbSet Persons和字符串[]名称 我正在尝试使用多个名称进行查询,例如:

db.Where(o => Names.Any(p => EF.Functions.Like(o.Name, p)))
我不断得到“无法翻译。请以可以翻译的形式重写查询,或者通过插入对AsEnumerable()、AsAsAsAsyncEnumerable()、ToList()或ToListSync()的调用显式切换到客户端计算”


我想在sql server上执行此操作,因此无法对其进行评估。我能做什么?

欢迎来到堆栈溢出。请学习如何使用堆栈溢出,并阅读如何提高问题的质量。然后,你的问题包括你的源代码作为一个,它可以被其他人编译和测试。另外,请检查以了解您可以提出哪些问题。另请参阅SQL相关问题。我正在搜索答案,我找到了一种方法,只是不知道为什么EF不支持本机支持。它必须将字符串数组转换为某种SQL。EF6有一个相当笨拙(尽管是唯一)的方法来做到这一点。这是不可伸缩的。他们决定在EF core中不支持它。您可以使用谓词生成器将字符串转换为链式或(
|
)谓词。欢迎使用堆栈溢出。请学习如何使用堆栈溢出,并阅读如何提高问题的质量。然后,你的问题包括你的源代码作为一个,它可以被其他人编译和测试。另外,请检查以了解您可以提出哪些问题。另请参阅SQL相关问题。我正在搜索答案,我找到了一种方法,只是不知道为什么EF不支持本机支持。它必须将字符串数组转换为某种SQL。EF6有一个相当笨拙(尽管是唯一)的方法来做到这一点。这是不可伸缩的。他们决定在EF-core中不支持它,您可以使用谓词生成器将字符串转换为链式或(
|
)谓词。