如何在ASP.NET 2.0中设置ObjectDataSource参数值,实现复杂查询?

2026-03-31 00:270阅读0评论SEO问题
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1559个文字,预计阅读时间需要7分钟。

在上一节的教程中,我们注意到有多种方式可以将参数值传递到OjbectDataSource的方法中。如果参数值采用硬编码方式,通常来源于页面上的Web控件或其他来源。

导言

  正如我们在上一节的教程中所看到的,有很多可供选择的方式把参数的值传递到OjbectDataSource的方法里。假如参数值是采用硬编码方式,来源于页面上的一个Web控件,又或者其他可被数据源Parameter对象读取的源,那么这个值可以绑定到输入参数而不需要写一行的代码。

  然而有些时候,参数值来自某些在数据源的内置Parameter对象里还没有计算出来的源。假如我们的站点支持我们的考虑那么我们也许希望参数基于当前登录用户。又或者我们在参数传送到ObjectDataSource的隐含对象的方法前做一些客户化定制。

  无论什么时候调用ObjectDataSource的Seelect方法,它都会首先触发它的Selecting事件,然后才调用ObjectDataSource的隐含对象的方法,完成后则激发ObjectDataSource ObjectDataSource的Selected 事件(图一说明这些事件的顺序)。可以在Selecting事件的事件委托中对参数的值进行设置或更改。

图 1: ObjectDataSource的Selected 和 Selecting 事件分别在调用它的隐含对象的方法之前和之后触发

  这一节里我们将看看添加一个接受一个输入参数方法到DAL和BLL层,参数名为Month,int类型,方法返回一个EmployeesDataTable对象,里边包含的是雇佣周年纪念都指定月份的雇员。我们的例子将编码设置为基于当前月份,显示一个“本月雇用周年纪念员工”列表。

让我们开始吧!
第一步: 添加一个方法到 EmployeesTableAdapter

  在我们的第一个例子里,我们需要添加一个方法来获取那些雇用日期(HireDate)在某个指定月份的员工。

阅读全文

本文共计1559个文字,预计阅读时间需要7分钟。

在上一节的教程中,我们注意到有多种方式可以将参数值传递到OjbectDataSource的方法中。如果参数值采用硬编码方式,通常来源于页面上的Web控件或其他来源。

导言

  正如我们在上一节的教程中所看到的,有很多可供选择的方式把参数的值传递到OjbectDataSource的方法里。假如参数值是采用硬编码方式,来源于页面上的一个Web控件,又或者其他可被数据源Parameter对象读取的源,那么这个值可以绑定到输入参数而不需要写一行的代码。

  然而有些时候,参数值来自某些在数据源的内置Parameter对象里还没有计算出来的源。假如我们的站点支持我们的考虑那么我们也许希望参数基于当前登录用户。又或者我们在参数传送到ObjectDataSource的隐含对象的方法前做一些客户化定制。

  无论什么时候调用ObjectDataSource的Seelect方法,它都会首先触发它的Selecting事件,然后才调用ObjectDataSource的隐含对象的方法,完成后则激发ObjectDataSource ObjectDataSource的Selected 事件(图一说明这些事件的顺序)。可以在Selecting事件的事件委托中对参数的值进行设置或更改。

图 1: ObjectDataSource的Selected 和 Selecting 事件分别在调用它的隐含对象的方法之前和之后触发

  这一节里我们将看看添加一个接受一个输入参数方法到DAL和BLL层,参数名为Month,int类型,方法返回一个EmployeesDataTable对象,里边包含的是雇佣周年纪念都指定月份的雇员。我们的例子将编码设置为基于当前月份,显示一个“本月雇用周年纪念员工”列表。

让我们开始吧!
第一步: 添加一个方法到 EmployeesTableAdapter

  在我们的第一个例子里,我们需要添加一个方法来获取那些雇用日期(HireDate)在某个指定月份的员工。

阅读全文