---------------------------------------------------------------------------
[System.ComponentModel.DataObject]
//类上面加上了DataObject 标签(就是在类声明语句的上面的[System.ComponentModel.DataObject]),DataObject标签把这个类标记为可以绑定到一个ObjectDataSource控件。。。

[System.ComponentModel.DataObjectMethodAttribute(System.ComponentModel.DataObjectMethodType.Select, true)]
//把这个方法标记为可以绑定到一个ObjectDataSource控件。。。
---------------------------------------------------------------------------
点击ObjectDataSource的智能标记中的“配置数据源”链接进入数据源配置向导。 这将进入数据源配置向导。首先,我们需要给ObjectDataSource指定一个业务对象。如果勾选上“只显示数据组件”,那么下拉框中就仅仅显示出那些以[DataObject]特征修饰过的对象。当前这个列表中应该包含了类型化数据集中表适配器对象(TableAdapters)和前文中我们已经创建的业务对象。如果你忘了给业务逻辑类增加[DataObject]特征,那么当前列表中讲看不到它们。如果是那样的话,你也可以不勾选“只显示数据组件”从而看见所有对象,这就可以把业务对象包含进来(连同类型化数据集中的其他类 –DataTables、 DataRows等等)

在下一屏中向导中你可以选择ObjectDataSource要调用的方法。下拉列表中方法是从上一屏中选定的业务对象获得的。如果你已经给BLL层的数据逻辑方法使用了[DataObjectMethod]特征,那么该方法就会出现在下拉列表筐中)。
 ------------------------------------------------------------------------------

手工配置ObjectDataSource

ObjectDataSource配置向导提供了一个快捷的方式来指定它使用的对象并关联需要调用的方法。不过,你也可以通过它的属性来配置ObjectDataSource,不管是通过属性窗口还是直接在声明标记里。只需简单地将TypeName属性设置为使用的业务对象的名称,将SelectMethod属性设置为提取数据时需要调用的方法名称。

 1<asp:ObjectDataSource ID="ObjectDataSource1" runat="server" 
 2
 3        SelectMethod="GetProducts"
 4
 5        TypeName="ProductsBLL">
 6
 7</asp:ObjectDataSource>
 8
 9 
10

尽管你可能更喜欢数据源配置向导,但有时你还是需要手工配置ObjectDataSource,因为配置向导只列出已经开发的类。如果你希望把ObjectDataSource绑定到.NET Framework里的类–例如 Membership class来存取登陆用户信息,或者Directory class 来管理文件系统信息,那么你就需要手工设置ObjectDataSource的属性。

------------------------------------------------------------------------------
设置Web控件的属性作为参数源

有的BLL层中申明的方法是带参数的查询。。如果我们要使用ObjectDataSource来进行查询。必须要获得用户输入的参数值。。
在配置数据源向导第一屏选择BLL层中的类 。第二屏,选择类中的一个带参数方法。
向导再次显示最后一屏,让你选择参数的值。这一次,设置参数源为Control,这时会出现一个ControlID下拉列表,列表中包含页面上所有控件的名称;从中选择CountryName控件。由于第一次访问本页面时文本框CountryName会为空白,那么就没有值从它返回,也就不显示任何数据。如果你希望默认显示一些结果,那么要在DefaultValue文本框里输入一个默认的参数值。

 1<asp:ObjectDataSource ID="ObjectDataSource2" runat="server"
 2
 3    SelectMethod="GetSuppliersByCountry" TypeName="SuppliersBLL">
 4
 5    <SelectParameters>
 6
 7        <asp:ControlParameter ControlID="CountryName" Name="country" PropertyName="Text"
 8
 9            Type="String" />
10
11    </SelectParameters>
12
13</asp:ObjectDataSource>
14

------------------------------------------------------------------------------
编程设置ObjectDataSource的参数值

在配置数据源向导第一屏选择BLL层中的类。第二屏,选择类中的一个带参数方法。
最后一屏要求我们给方法的参数提供参数源。既然我们将编码设置这个值,就让参数源维持它的默认选项None,点击“完成”。

这将在ObjectDataSource的SelectParameters集合里创建一个未指定参数值的Parameter对象。

 1<asp:ObjectDataSource ID="ObjectDataSource1" runat="server" OldValuesParameterFormatString="original_{0}"
 2
 3    SelectMethod="GetEmployeesByHiredDateMonth" TypeName="EmployeesBLL">
 4
 5    <SelectParameters>
 6
 7        <asp:Parameter Name="month" Type="Int32" />
 8
 9    </SelectParameters>
10
11</asp:ObjectDataSource>
12

要编码设置这个参数值,我们需要给ObjectDataSource的Selecting事件添加一个事件委托。为了实现这一点,到设计视图里在ObjectDataSource上双击。另一种方式是选中ObjectDataSource在属性窗口里点击黄色闪电小图标,然后,直接在Selecting这一栏里双击或者输入一个你要使用的事件委托的名称。

1protected void ObjectDataSource1_Selecting(object sender, ObjectDataSourceSelectingEventArgs e)
2
3{
4
5    e.InputParameters["参数名"] = 值;
6
7}
8

转载于:https://www.cnblogs.com/4501550/archive/2006/12/05/582847.html

ObjectDataSource控件的使用...相关推荐

  1. ID为GUID类型时使用ObjectDataSource控件的时候的未找到DataObjectTypeName属性的解决方法...

    今天花了好长时间才排除一个错误,真心很久纠结. 在设计表的时候把id字段设置为guid类型的时候,然后使用数据源控件的时候 插入,更新等操作会报以下类型的错误 未能在 ObjectDataSource ...

  2. 数据源SqlDataSource,DetailView,ObjectDataSource控件的配置使用

    开发工具:vs2008,.net Framework2.0 ,sql server2005 一.SqlDataSource控件 设置步骤如下: 1. 点击sqlDataSource的配置数据源: 2. ...

  3. [翻译]Scott Mitchell 的ASP.NET 2.0数据教程之十三:在DetailsView控件中使用TemplateField...

    导言 比起BoundField.CheckBoxField.HyperLinkField以及其他的那些数据字段控件(data field controls)来说,TemplateField提供了一种高 ...

  4. ASP.NETserver控件使用之Reportviewer 报表

    1.       Reportviewer 报表 1.1.       Reportviewer控件 注:本教程附2个事例: l  演练:在本地处理模式下将数据库数据源与 ReportViewer W ...

  5. 在 GridView 控件中添加一列复选框51

    简介 在前面的教程中 , 我们学习了如何为 GridView 控件添加一列 单选 按钮来选择一个特定的记录.当用户被限制最多只能从网格中选中一项时,一列单选按钮是一个非常恰当的用户界面.然而,有时我们 ...

  6. asp.net,关于Listview+DataPager控件使用

    关于Listview+DataPager控件使用 1.DAL层,根据开始条数+结束条数查询数据. 2.BLL层,startRowIndex和maximumRows进行查询. (startRowInde ...

  7. ASP.NET 2.0 的数据源、数据绑定控件概述与区别

    一.Render UI 1 GridView GridView 控件用来在表中显示数据源的值.每列表示一个字段,而每行表示一条记录.GridView 控件支持下面的功能: 绑定至数据源控件,如 Sql ...

  8. [翻译]Scott Mitchell 的ASP.NET 2.0数据教程之十二:在GridView控件中使用TemplateField

    在ASP.NET 2.0中操作数据:在GridView控件中使用TemplateField 英文原版  |   本教程的代码(C#)   |   翻译目录   |   原文目录 导言 GridView ...

  9. 使用 SqlDataSource 控件查询数据47

    简介 我们目前探讨的所有教程均使用分层结构,包括表示层,业务逻辑层和数据访问层.我们已经在第一个教程( 创建数据访问层)中对数据访问层 ( DAL ) 做了详细的探讨,在第二个教程( 创建业务逻辑层) ...

最新文章

  1. 服务器上找不到iis,解决IIS服务器部署 字体图标找不到的原因
  2. GAN(Generative Adversarial Network,GAN)模型之:InfoGAN、WGAN、DCGAN模型
  3. Excel公式与函数案例速查手册/电脑技巧从入门到精通丛书
  4. 触目惊心,超过 8000+ 漏洞 Redis 暴露在云端!
  5. ajax html xml数据格式,AJAX | 数据格式JSON与XML的区别
  6. ANSI, UNICODE与UTF8相互转换模板类
  7. Android DEX 基础
  8. 2008年浙江大学计算机及软件工程研究生机试真题
  9. Spring Cloud Sleuth进阶实战
  10. 解密Arm Neoverse V1 和 Neoverse N2 平台 为下一代基础设施带来计算变革
  11. 25GbE可以解决数据中心过载问题吗?
  12. Bi-LSTM+CRF模型实现命名实体识别
  13. eNSP模拟器中 FTP 实验
  14. 计算机软件国民经济行业代码,国民经济行业类别及代码.DOC
  15. JavaScript 检测当前浏览器内核并提示下载谷歌Chrome浏览器
  16. 【keil5】pwm驱动步进电机
  17. 正点原子stm32视频教程第7~10节知识总结
  18. elementUI动态菜单
  19. android 2k屏分辨率是多少,5.5英寸2K分辨率2.5D屏幕
  20. 计算机考试贷款日到期日,怎么样用金融计算器算利率和期限

热门文章

  1. bind()的实现(持续更新中)
  2. LeetCode(771)——宝石与石头(JavaScript)
  3. 六级词汇打卡第五天(五)
  4. 为什么大部分人会碌碌无为?
  5. 属马的人性格有什么缺点和优点?
  6. 有一项调查显示:创业成功的年龄一般是在43岁左右
  7. 一个人开始变富时,会有这4个征兆,坚持下去,路越走越宽
  8. 普通的人改变结果,优秀的人改变原因,顶级优秀的人改变模型
  9. 在Mac上安装Linux的行为是否应该被鄙视?
  10. 曾火爆一时的五笔输入法,为什么彻底衰落了?