`
wangdeshui
  • 浏览: 257351 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

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 NULLAND ([t0].[NewsIsDisplay] = 1)
AND
 ([t0].[Newslanguages] = @p0AND ([t0].[NewsIsHome] = 1AND ([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

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

分享到:
评论

相关推荐

    LINQ to SQL手册

    **LINQ to SQL** 是 .NET Framework 中的一个技术,它允许开发者使用 C# 或 VB.NET 语言的查询表达式语法来操作数据库。本手册详细介绍了使用 LINQ to SQL 进行数据查询、操作和更新的各种方法,涵盖了从基础到高级...

    LINQ to SQL语句(23)之动态查询

    总结一下,"LINQ to SQL语句(23)之动态查询"这一主题主要讨论了如何利用System.Linq.Dynamic库在运行时构建和执行查询,以及如何处理各种查询操作如筛选、联接、分组和投影。虽然动态查询提供了灵活性,但也要注意其...

    WPF Data Binding with LINQ to SQL

    This is the final part of a three-part series on using LINQ to SQL: Part 1: Mapping Tables to Objects Part 2: Adding/Updating/Deleting Data Part 3: WPF Data Binding with LINQ to SQL These tutorials ...

    Linq TO Sql 扩展方法

    在LINQ to SQL中,动态查询可能涉及使用dynamic关键字进行操作,以实现更灵活的查询构建。 3. **LinqToSqlExtensions**:这是 LINQ to SQL 的扩展库,包含一系列扩展方法,用于扩展默认的 LINQ to SQL 功能,比如...

    .net linq动态组合查询条件及排序

    LINQ主要由三部分组成:LINQ to Objects、LINQ to SQL和LINQ to XML,分别对应于内存中的对象、数据库中的数据以及XML文档的查询。 动态组合查询条件是LINQ的一大优势。在.NET中,我们可以使用Expression Trees...

    System.Linq.Dynamic.dll

    《深入理解System.Linq....它简化了动态查询的实现,提高了代码的可读性和可维护性。但同时,也需要谨慎处理性能和安全问题。正确理解和使用System.Linq.Dynamic.dll,能够帮助开发者编写出更加灵活和强大的应用程序。

    Dynamic LINQ to NHibernate

    **Dynamic LINQ to NHibernate** 是一个结合了 LINQ(Language Integrated Query)与 NHibernate 的动态查询技术。该技术允许开发人员通过字符串来构建复杂的查询逻辑,从而提高了代码的灵活性和可维护性。 #### ...

    LINQ to Objects Using C# 4.0: Using and Extending LINQ to Objects and Parallel LINQ

    Using LINQ to Objects, .NET developers can write queries over object collections with the same deep functionality that was once available only with SQL and relational databases. Now, for the first ...

    Linq to SQL语法及实例大全

    通过 LINQ to SQL,开发人员可以使用 C# 或 Visual Basic 编写 LINQ 查询来处理数据库数据,这极大地提高了开发效率并减少了代码编写量。 #### 二、LINQ to SQL基础语法 ##### 1. Where 操作 - **简单形式**: ``...

    DynamicQueryable基于Linq的动态查询示例

    9. **安全性**:动态查询可能导致SQL注入问题,尤其是在处理用户输入时。因此,确保对用户输入进行充分的验证和清理是至关重要的。 10. **适用场景**:适用于需要高度定制化查询,或者数据查询条件频繁变化的场景,...

    System.linq.Dynamic

    标题 "System.Linq.Dynamic" 指的是 .NET Framework 中的一个扩展库,它允许开发者使用动态查询语法执行LINQ(Language Integrated Query)操作。这个库的主要优势在于,它使得程序员能够以字符串的形式构建查询,而...

    c# Linq WebService rss

    •SampleQueries: 这是最重要的示例,其中包含了 500 多个关于如何在 LINQ to Objects、LINQ to SQL、LINQ to XML 和 LINQ to DataSet 中使用各个查询运算符的例子。 •SimpleLambdas: 几个关于如何编写和使用 ...

    linq微软官方资料CSharp

    这个“linq微软官方资料CSharp”压缩包显然包含了微软官方提供的LINQ相关的示例代码,特别强调了LINQ to SQL的动态查询部分。 LINQ的核心思想是将查询表达式直接集成到编程语言中,使得数据查询更加简洁、直观且...

    Linq 动态查询参考

    在提供的“LINQDynamicSearchDemo.sln”解决方案中,很可能包含了一个示例项目,演示了如何使用LINQ Dynamic库来实现动态查询。项目可能包含了以下部分: 1. **表达式构建器**:这部分代码会根据用户输入或其他动态...

    System.Linq.Dynamic.Core:来自System Linq Dynamic功能的.NET Standard .NET Core版本

    总览使用此库,可以在IQueryable上编写动态LINQ查询(基于字符串): var query = db . Customers . Where ( " City == @0 and Orders.Count >= @1 " , " London " , 10 ) . OrderBy ( " CompanyName " ) . Select ...

    LINQ_to_SQL语法及实例大全.

    LINQ to SQL是Microsoft在.NET Framework 3.5中引入的一种技术,它允许开发人员使用LINQ查询语言来操作数据库中的数据。LINQ to SQL通过提供一个面向对象的API,将SQL查询转换成易于理解和维护的形式,并且提供了...

    通用Linq操作

    `Dynamic.cs`可能包含了动态对象的实现,这在Linq查询中非常有用。动态对象可以让我们在运行时定义属性,使得查询更加灵活。例如,可以创建一个动态对象来表示SQL的WHERE子句条件,这样在编译时无需确定所有可能的...

    dynamic-linq-query-builder-master.zip

    通过调用API方法,你可以获取当前的查询状态,然后利用这些信息在服务器端(如使用C#的Linq to Entities或Linq to Objects)执行相应的查询。 总结来说,jQuery-QueryBuilder是一个强大的前端工具,它简化了用户...

    LINQ TO OBJECTS USING C# 4.0

    - **LINQ (Language Integrated Query)**:是微软在 .NET Framework 3.5 中引入的一项技术,它使得开发人员能够用类似于SQL的语言来查询内存中的数据。 - **LINQ to Objects**:是 LINQ 的一部分,主要用于操作...

    LINQ_to_SQL语法及实例大全

    ### LINQ to SQL语法及实例大全 #### 一、LINQ to SQL简介 **LINQ to SQL** 是 Microsoft .NET Framework 提供的一种用于在数据库和应用程序之间进行数据操作的技术。它提供了一种声明式的编程方式来处理数据,...

Global site tag (gtag.js) - Google Analytics