简单实现Linq多条件查询

开发 后端
无论什么语言实现多条件查询都是需要一定得逻辑性的,用Linq实现更是不容易,但是大家看完下述Linq多条件查询实现方法,一定会觉得实现起来很简单。

Linq多条件查询究竟有多难呢?其实不然,在笔者的带领下,你会发现Linq多条件查询实现起来是很简单的。

Linq多条件查询(高级搜索),假如一共可以输入5个条件,但是用户根据需要可能只输2个或3个,也可能是4个,写查询方法是不是也需要写多个方法,还是只需要写一个方法,下面此Linq多条件查询方法就来帮你解决此问题。

  1. //用Linq 实现动态多条件查询  
  2. Code  
  3.         private void ViewBinding()  
  4.         {       
  5.             Expressionbool>> expr = n => GetCondition(n);  
  6.             var xQuery =
  7.  DCDataContext.TestTables.Where(expr.Compile());  
  8.             this.dataGridView1.DataSource = xQuery.ToList();  
  9.         }  
  10.         private bool GetCondition(TestTable tb)  
  11.         {  
  12.             bool boolResult = true;  
  13.             if (txtUserNumber.Text.Trim() != string.Empty)  
  14.             {  
  15.                 boolResult &= tb.UserNumber == 
  16. int.Parse(txtUserNumber.Text.Trim());  
  17.             }  
  18.             if (txtName.Text.Trim() != string.Empty)  
  19.             {  
  20.                 boolResult &= tb.Name == txtName.Text.Trim();  
  21.             }  
  22.             if (txtClassName.Text.Trim() != string.Empty)  
  23.             {  
  24.                 boolResult &= tb.ClassName == txtClassName.Text.Trim();  
  25.             }  
  26.             return boolResult;  
  27.         }  
  28.         private void button1_Click(object sender, EventArgs e)  
  29.         {  
  30.             ViewBinding();  
  31.         } 

LINQ,语言级集成查询(Language INtegrated Query)

LINQ 提供了一条常规的途径即给 .Net Framework 添加一些可以应用于所有信息源( all sources of information )的具有多种用途( general-purpose )的语法查询特性( query facilities ),这是比向开发语言和运行时( runtime )添加一些关系数据( relational )特性或者类似 XML 特性( XML-specific )更好的方式。这些语法特性就叫做 .NET Language Integrated Query (LINQ) 。

无论什么语言实现多条件查询都是需要一定得逻辑性的,用Linq实现更是不容易,但是大家看完上述Linq多条件查询实现方法,一定会觉得实现起来很简单。

【编辑推荐】

  1. LINQ动态查询的实现浅析
  2. LINQ TO SQL动态修改表名称的实现浅析
  3. LINQ To SQL的一点讨论
  4. 浅析LINQ事务处理的实现
  5. 浅析DataSet和DataTable
责任编辑:阡陌 来源: 博客园
相关推荐

2009-09-15 09:33:46

linq多条件查询

2009-09-15 17:45:34

Linq多条件

2009-09-15 15:18:40

Linq连接查询

2010-11-09 15:18:37

SQL Server多

2009-09-10 16:28:17

LINQ查询

2009-09-15 09:19:22

linq动态条件

2009-09-07 17:05:10

LINQ进行查询

2009-09-09 15:10:35

LINQ查询句法

2009-09-08 09:24:50

LINQ查询

2009-09-15 09:39:38

LINQ查询架构

2009-09-14 10:20:52

LINQ查询语法

2009-09-15 16:09:12

LINQ进行查询

2009-09-15 14:58:26

Linq查询本质

2009-09-15 09:45:23

Linq动态条件

2023-11-17 15:34:03

Redis数据库

2009-09-17 09:24:57

Linq实现分页

2009-06-18 10:07:44

LINQ to ACC

2009-06-29 09:03:31

Hibernate多条

2009-09-14 18:23:59

LINQ嵌套查询

2009-09-11 09:53:16

Linq查询表达式
点赞
收藏

51CTO技术栈公众号