【发布时间】:2019-11-27 11:48:49
【问题描述】:
我有一个简单的查询,其中 WHERE 子句如下所示:
where EF.Functions.Like(header.OrderNumber, numbers[0]) || EF.Functions.Like(header.CustomerPoNumber, numbers[0])
我专门使用EF.Functions.Like,因为我希望用户能够根据需要插入%。但是我正在努力弄清楚如何才能使这种动态化。从numbers[0] 可以看出,我目前正在对第一个要测试的项目进行硬编码。但实际上,当我将它们添加到 WHERE 子句时,我需要遍历这些项目并在每个项目上执行 OR。
我之前用System.Linq.Dynamic.Core 完成了这项工作。我创建了一个动态的WHERE 语句并使用.Contains。但问题在于.Contains 在创建查询时强制使用双通配符。我需要能够让用户选择何时包含它。
关于如何实现这一点的任何想法?
【问题讨论】:
标签: c# entity-framework .net-core ef-core-2.2