博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
EF 對于多條件的查詢
阅读量:4041 次
发布时间:2019-05-24

本文共 1610 字,大约阅读时间需要 5 分钟。

對于頁面多個條件的查詢,我們可以利用EF的 Where連續分句.

例如下圖多條件的查詢,利用 Where 連續語句則明顯簡潔.
在这里插入图片描述

using (ADMEntities entis = new ADMEntities())              {
tbQueryRt = entis.vw_JobReg.Where(o => (quotNo == "" ? true : o.QuotNo.Contains(quotNo))) .Where(o => (contMan == "" ? true : o.Site_Contact_Person.Contains(contMan))) .Where(o => (jobNo == "" ? true : o.JobNo.Contains(jobNo))) .Where(o => (wiNO == "" ? true : o.WINo.Contains(wiNO))) .Where(o => (testType == "" ? true : o.Test_Type.Contains(testType))) .Where(o => (status == "" ? true : o.Status.Contains(status))) .Where(o => (desc == "" ? true : o.Job_Description.Contains(desc))) .Where(o => (client == "" ? true : o.Client.Contains(client))) .Where(o => (location == "" ? true : o.Job_Location.Contains(location))) .Where(o => (remarks == "" ? true : o.Remarks.Contains(remarks))) .Where(o => (dateFrom == "" ? true : rbOrderDate.Checked ? o.Order_Date >= dFrom : rbTestDate.Checked ? o.Test_Date_From >= dFrom : true)) .Where(o => (dateTo == "" ? true : rbOrderDate.Checked ? o.Order_Date <= dTo : rbTestDate.Checked ? o.Test_Date_From <= dTo : true)) .ToList().ToDataTable(); }

上述每一個Where分句,當對應的條件為空時,如下圖所示,linq 轉為sql 后,是不會生成對應的sql 條件語句.(下面第二個where分句不會生成sql)

在这里插入图片描述

转载地址:http://cpmdi.baihongyu.com/

你可能感兴趣的文章
iphone开发基础之objective-c学习
查看>>
iphone开发之SDK研究(待续)
查看>>
计算机网络复习要点
查看>>
Variable property attributes or Modifiers in iOS
查看>>
NSNotificationCenter 用法总结
查看>>
C primer plus 基础总结(一)
查看>>
剑指offer算法题分析与整理(一)
查看>>
剑指offer算法题分析与整理(三)
查看>>
Ubuntu 13.10使用fcitx输入法
查看>>
pidgin-lwqq 安装
查看>>
mint/ubuntu安装搜狗输入法
查看>>
C++动态申请数组和参数传递问题
查看>>
opencv学习——在MFC中读取和显示图像
查看>>
retext出现Could not parse file contents, check if you have the necessary module installed解决方案
查看>>
Matlab与CUDA C的混合编程配置出现的问题及解决方案
查看>>
如何将PaperDownloader下载的文献存放到任意位置
查看>>
C/C++中关于动态生成一维数组和二维数组的学习
查看>>
JVM最简生存指南
查看>>
Java的对象驻留
查看>>
JVM并发机制探讨—内存模型、内存可见性和指令重排序
查看>>