LINQ to SQL数据模型概括

开发 后端
这里介绍LINQ to SQL数据模型,我将演示如何基于LinqDataSource控件来使用的比较全的LINQ查询表达式,以及任意的LINQ to SQL查询表达式。

在本系列的Part 5部分,我提到了。NET 3。5里新引入的<asp:LinqDataSource>控件,利用它我们可以轻易的将ASP。NET UI控件绑定到LINQ to SQL数据模型。在另一篇有关<asp:ListView>控件的文章里(Part 1 - Building a Product Listing Page with Clean CSS UI),我多多少少演示了其用法。

在这些文章里,我执行的查询都是比较直观的(其where子语句都是处理单个表的数据),今天的文章,我将演示如何基于LinqDataSource控件来使用的比较全的LINQ查询表达式,以及任意的LINQ to SQL查询表达式。

Quick Recap: <asp:LinqDataSource> with a Declarative Where Statement

在本系列的Part 1 和 Part 5部分,我演示了如何利用LinqDataSource控件内置的条件过滤功能,来对某个LINQ to SQL数据模型进行限制。

比如,假定我们已经为Northwind数据库创建了一个LINQ to SQL数据模型(具体过程可参考Part 2部分),我们可以在页面上添加一个<asp:LinqDataSource>控件,并设置一个<where>过滤条件,仅仅返回某个指定category的所有产品。

在大多数情况下没有问题。但是如果我们想使过滤条件更为复杂一些呢?比如,我们想动态的设置countries,而只将这些国家的产品显示出来,这么办呢?

利用<asp:LinqDataSource>控件的Selecting事件

为了处理用户定制查询,你可以构建一个事件处理器来处理<asp:LinqDataSource>控件的"Selecting"事件。 在该事件处理器里你可以任意地写代码,以检索你想要得到的结果。为此,你可以利用一个LINQ to SQL查询表达式,或调用一个存储过程,或使用一个Custom SQL Expression(用户定制查询),以对该LINQ to SQL数据模型进行检索。一旦你检索到了一连串的数据(a sequence of data),你需要做的就是将其赋值给一个LinqDataSourceSelectEventArgs对象的"Result"属性。

【编辑推荐】

  1. Linq匿名类型简单概述
  2. Linq随机读取数据浅析
  3. Linq Lambda表达式全面分析
  4. Linq扩展方法简单分析
  5. 初探Linq局部变量类型
责任编辑:佚名 来源: IT168
相关推荐

2009-09-15 17:07:24

Linq To SQL

2009-09-16 17:33:16

LINQ TO SQL

2009-09-18 15:15:12

LINQ to SQL

2009-09-14 15:37:06

LINQ映射数据库

2009-09-16 10:27:35

LINQ Custom

2009-09-16 10:08:06

LINQ查询

2009-09-15 13:59:18

LINQ to Dat

2009-09-16 16:52:50

LINQ to XML

2009-09-09 15:10:35

LINQ查询句法

2009-09-16 16:55:07

LINQ to XML

2009-09-15 10:12:37

LINQ To SQL

2009-09-08 16:20:12

LINQ to SQL

2009-09-15 16:09:12

LINQ进行查询

2009-09-14 16:51:33

LINQ XML树加载

2021-02-28 22:20:25

2010-05-26 14:37:56

Cassandra数据

2009-09-15 09:50:07

Linq操作数据库

2009-09-15 15:18:00

Linq Lambda

2021-01-27 05:34:33

Python对象模型

2012-03-05 10:54:03

NoSQL
点赞
收藏

51CTO技术栈公众号