使用SQLFunction按多个字符串搜索.与EF的区别
本文关键字:EF 区别 搜索 字符串 SQLFunction 使用 | 更新日期: 2023-09-27 18:06:16
当输入是单个字符串
时效果很好在这个例子中"Lorem ipsum"
dbContext.NewsArticles.Where(article => SQLFunction.Difference(article.Text, "Lorem ipsum") == 3).ToArray()
如何通过多个字符串进行搜索?换句话说,输入是字符串[]或List
var input = new List<string>{
"Lorem ipsum dolor",
"elementum lacinia",
"cursus nulla molestie",
}
这可能吗?
您应该能够将该列表用于Any
。
dbContext.NewsArticles
.Where(article => input.Any(x => SQLFunction.Difference(article.Text, x) == 3))
.ToArray();
取决于表的大小和文本列的数据类型/大小。当查询计划导致并行查询时,按日期对表进行分区(如果这是一个选项并且取决于数据分布)可能会提供积极的结果。