如何使用实体框架过滤来自实体的所有内容

时间:2012-09-19 23:24:33

标签: linq entity-framework orm entity

我正在使用VS2010,VB.NET和实体框架。

我的应用程序中有一个文本框,您可以通过发送他的姓名,身份证号码或姓氏来搜索某个人。显然,我在数据库中有一个名为PERSON的表,如何从数据库中检索与搜索匹配的所有人员。

例如我在我的数据库中有这两个人:

人1。
姓名:萨曼莎
姓氏:Randf
ID:702020406

人2
姓名:Eric
姓氏:Salas
ID:405670233

如果一个人在搜索文本字段中发送短信“s” ...这个人应该从数据库中检索,因为名字中的人1与人2是巧合的在姓氏。 这是一个全球搜索,任何想法?

2 个答案:

答案 0 :(得分:0)

context.Persons.Where(p => p.Name.Contains("s") || p.LastName.Contains("s"))

答案 1 :(得分:0)

您可以使用Contains()方法匹配搜索字符串。以下示例将在名字或姓氏的任何位置返回名称中包含“s”的人。

context.Persons.Where(p => p.Name.ToLower().Contains("s") || p.LastName.ToLower().Contains("s"));

或者,您可以将标准SQL语句与LIKE运算符一起使用,并使用context.ExecuteStoreQuery()函数执行它。