Linq2SQL过滤多列

时间:2011-09-29 02:38:12

标签: c# linq entity-framework linq-to-sql

如果我有这样的数据表

id, Name, Address, Status

我如何在Linq中搜索多个列?

因此,如果我输入“slappy”的搜索词,我希望列名称,地址和状态中的所有匹配。

有一种简单的方法,还是我需要为每列应用contains

2 个答案:

答案 0 :(得分:0)

var searchTerm = "slappy";
var result = context.table.Where(row => row.Name.Contains(searchTerm) ||
                                        row.Address.Contains(searchTerm) ||
                                        row.Status.Contains(searchTerm));

答案 1 :(得分:0)

您是否考虑使用搜索引擎库? 它不是基于EF,但EF不是您的最佳选择。当然,你可以混合技术。 http://incubator.apache.org/lucene.net/