快速业务通道

ASP.NET 2.0数据操作教程之二十:定制数据修改界面

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-05-21
ASP.NET 2.0数据操作教程之二十:定制数据修改界面

图2:配置ObjectDataSource使用上面创建的UpdateProduct重载方法

像《data modification》教程中那样,Visual Studio创建了 ObjectDataSource的元素标记并指定OldValuesParameterFormatString属性为 original_{0}。由于我们编写的方法不支持传入的原始的ProductID值,所以业务 逻辑层不会生效。因此,像上节教程中那样,我们需要从元素标记中移除这些属 性,或者设置这些属性。

改动后的ObjectDataSource元素标记将如下所示 :

<asp:ObjectDataSource ID="ObjectDataSource1" runat="server"
SelectMethod="GetProducts" TypeName="ProductsBLL" UpdateMethod="UpdateProduct">
<UpdateParameters>
<asp:Parameter Name="productName" Type="String" />
<asp:Parameter Name="categoryID" Type="Int32" />
<asp:Parameter Name="supplierID" Type="Int32" />
<asp:Parameter Name="discontinued" Type="Boolean" />
<asp:Parameter Name="productID" Type="Int32" />
</UpdateParameters>
</asp:ObjectDataSource>

注意上面代码中 OldValuesParameterFormatString已经被移除,并且在UpdateParameters集合中 为UpdateProduct重载方法的每个入口参数提供了一个Parameter。

虽然 ObjectDataSource被配置为只对产品的部分信息进行更新,而GridView却显示了 所有的产品信息。我们需要按照下面几点来调整GridView:

1. 只包括 ProductName, SupplierName, CategoryName字段的绑定列和Discontinued字段的 CheckBox列。

2. CategoryName 和 SupplierName字段在Discontinued前 面显示(左边)

3. 将CategoryName 和 SupplierName的标题分别改为 “Category” 和 “Supplier”

4. 启用编辑模式 (在GridView的智能标记中选择启用编辑复选框)

这些调整之后,设计器 中的页面将如图3所示:

ASP.NET 2.0数据操作教程之二十:定制数据修改界面

图3:移除GridView中无用的字段

GridView的元素标记也像下面 所示:

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="ProductID"
DataSourceID="ObjectDataSource1" EnableViewState="False">
<Columns>
<asp:BoundField DataField="ProductName" HeaderText="ProductName" SortExpression="ProductName" />
<asp:BoundField DataField="CategoryName" HeaderText="Category" ReadOnly="True"
SortExpression="CategoryName" />
<asp:BoundField DataField="SupplierName" HeaderText="Supplier" ReadOnly="True"
SortExpression="SupplierName" />
<asp:CheckBoxField DataField="Discontinued" HeaderText="Discontinued" SortExpression="Discontinued" />
</Columns>
</asp:GridView>

这时GridView的只读界面就改好了。查 看数据时,每种产品就作为GridView中的一行,并显示产品的name, category,supplier和discontinued状态。

ASP.NET 2.0数据操作教程之二十:定制数据修改界面

图4: GridView调整后的只读界面

三、在编辑界面中使用 DropDownList显示Category和Supplier

我们注意到ProductsRow对象包含 产品的CategoryID,CategoryName,SupplierID和SupplierName属性,但是 Products数据库只保存了外键,而对应的Name保存在Categories和S

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号