拼吾爱程序人生

首页 » .Net编程 » Linq » Linq to SQL Dynamic
cobra - 2008-4-2 0:03:00
文/cnblogsfans  出处/博客园

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


 附件: 您所在的用户组无法下载或查看附件

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


 附件: 您所在的用户组无法下载或查看附件

调用


 附件: 您所在的用户组无法下载或查看附件

最终生成的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等:


 附件: 您所在的用户组无法下载或查看附件

 您可能对 [Linq] 的这些文章也感兴趣:

LINQ to SQL活学活用(2):躲起来别让我看见
LINQ体验(3)——C# 3.0新语言特性和改进(下篇)
LINQ体验(2)——C# 3.0新语言特性和改进(上篇)
Linq简介
Linq 使用总结
LINQ Framework Design Guidelines
使用linq to xml 快速创建RSS
PLINQ改名为Parallel Extensions发布
Linq系列:基础与本质(Part I)
LINQ体验(5)——LINQ语句之Select/Distinct和Count/Sum/Min/Max/Avg
1
查看完整版本: Linq to SQL Dynamic
Modify by pin5i DZNT_ExpandPackage 2.1.3237 2007-2008 pin5i.com
  Total Unique Visitors: