【发布时间】:2016-01-27 03:18:34
【问题描述】:
我有一个搜索查询字符串列表。
我想查看数据库中的字符串是否包含查询中的任何这些术语。我想在一行代码上执行此操作,不会多次调用数据库。这应该可以,但我希望它更加优化。
var queries = searchQuery.Trim().Split(' ', StringSplitOptions.RemoveEmptyEntries).Distinct();
var query = context.ReadContext.Divisions.AsQueryable();
queries.ForEach(q => {
query = query.Where(d => (d.Company.CompanyCode + "-" + d.Code).Contains(q));
});
有没有可以更好或更优化的编写方式的函数?
【问题讨论】:
-
你期待什么输出?您想要包含查询的数据库行还是至少存在一个数据库行的查询?
-
稍后我会从中选择 ID,但这没关系,我只想知道如何从列表中进行倒置包含,
标签: c# entity-framework linq