Linq to SQL Dynamic 动态查询

简介:

在开发中我们常需要使用动态的条件来组合查询,scotte博客里提到了MS提供的一个动态查询类库Basic Dynamic LINQ C# Sample,这个可以给我们提供不少方便,但是给的示例实在太简单,实际当中我们很多不能像他这样用。

image

首先引入DynamicLibrary.cs,下面是我使用过程中的一些运行正确的用法(里面使用返回DataSet是因为对旧程序升级),我觉得写法很怪异,但是的确这样是正确的。

image

调用

image

最终生成的SQL语句

 

SELECT   COUNT ( * AS   [ value ]
FROM   [ dbo ] . [ News ]   AS   [ t0 ]
WHERE  ( [ t0 ] . [ NewsIsDeleted ]   IS   NULL AND  ( [ t0 ] . [ NewsIsDisplay ]   =   1
AND
 ( [ t0 ] . [ Newslanguages ]   =   @p0 AND  ( [ t0 ] . [ NewsIsHome ]   =   1 AND  ( [ t0 ] . [ NewsIsTop ]   =   1 )
--  @p0: Input NVarChar (Size = 8; Prec = 0; Scale = 0) [engbtest]
--
 Context: SqlProvider(Sql2005) Model: AttributedMetaModel Build: 3.5.21022.8 

 

另外分享一个query to datareader的方法,有了datareader可以生成datatable,dataset等:

image

注:不知各位有没有更好的办法?

本文转自敏捷的水博客园博客,原文链接http://www.cnblogs.com/cnblogsfans/archive/2008/04/01/1132918.html如需转载请自行联系原作者


王德水

相关文章
|
3天前
|
SQL Java 数据库连接
mybatis动态sql
mybatis动态sql
|
4天前
|
SQL 前端开发
基于jeecgboot复杂sql查询的列表自定义列实现
基于jeecgboot复杂sql查询的列表自定义列实现
10 0
|
6天前
|
SQL Java 数据库连接
MyBatis #与$的区别以及动态SQL
MyBatis #与$的区别以及动态SQL
11 0
|
7天前
|
SQL Java 数据库连接
【mybatis】动态sql之批量增删改查
【mybatis】动态sql之批量增删改查
12 0
|
8天前
|
SQL 数据库
SQL数据库基础语法-查询语句
SQL数据库基础语法-查询语句
|
8天前
T-sql 高级查询( 5*函数 联接 分组 子查询)
T-sql 高级查询( 5*函数 联接 分组 子查询)
|
8天前
|
机器学习/深度学习
T-sql 各种查询命令
T-sql 各种查询命令
|
14天前
|
SQL 关系型数据库 数据库
SQL 42501: Postgresql查询中的权限不足错误
SQL 42501: Postgresql查询中的权限不足错误
|
15天前
|
SQL 分布式计算 大数据
MaxCompute操作报错合集之在sql 里嵌套查询时,查询条件带有instr时报错,如何解决
MaxCompute是阿里云提供的大规模离线数据处理服务,用于大数据分析、挖掘和报表生成等场景。在使用MaxCompute进行数据处理时,可能会遇到各种操作报错。以下是一些常见的MaxCompute操作报错及其可能的原因与解决措施的合集。
|
19天前
|
SQL Java 数据库连接
【Mybatis】动态sql之sql的复用
【Mybatis】动态sql之sql的复用
12 0