快速业务通道

Scott Mitchell的ASP.NET 2.0数据操作教程之九:跨页面的主/从报表

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-05-21
控件, 该控件调用 ProductsBLL 类的GetProductsBySupplierID(supplierID)方法.

Scott Mitchell的ASP.NET 2.0数据操作教程之九:跨页面的主/从报表

图8: 添加一个新的命名为 ProductsBySupplierDataSource 的 ObjectDataSource

Scott Mitchell的ASP.NET 2.0数据操作教程之九:跨页面的主/从报表

图9: 选择ProductsBLL 类

Scott Mitchell的ASP.NET 2.0数据操作教程之九:跨页面的主/从报表

图10: 让ObjectDataSource 调用 GetProductsBySupplierID (supplierID) 方法

配置数据源向导的最后一步是要我们提供 GetProductsBySupplierID(supplierID) 方法中 supplierID 参数的来源. 要使 用查询字符串中的值. 设置参数源为QueryString 并在QueryStringField文本框 中输入查询字符串值的名称(SupplierID).

Scott Mitchell的ASP.NET 2.0数据操作教程之九:跨页面的主/从报表

图11: 使用查询字符串中的SupplierID值做为supplierID 参数的值

这样就可以了! 图12显示了当我们在SupplierListMaster.aspx页面中单 击Tokyo Traders供应商的”查看产品”链接时所看到的样 子.

Scott Mitchell的ASP.NET 2.0数据操作教程之九:跨页面的主/从报表

图12: 显示Tokyo Traders 供应商的产品

在 ProductsForSupplierDetails.aspx中显示供应商信息

如图12所示, ProductsForSupplierDetails.aspx只列出了通过在查询字符串中指定的 SupplierID的供应商的产品. 然而, 有些人会直接到达该页, 这样他们就不清楚 图12中正中显示Tokyo Trader的产品了. 要修正这个问题, 我们可以在页面上显 示供应商的信息.

在GridView上方添加一个FormView. 创建一个 ObjectDataSource控件并命名为SuppliersDataSource. 该控件调用SuppliersBLL 类的GetSupplierBySupplierID(supplierID)方法.

Scott Mitchell的ASP.NET 2.0数据操作教程之九:跨页面的主/从报表

图13: 选择 SuppliersBLL 类

Scott Mitchell的ASP.NET 2.0数据操作教程之九:跨页面的主/从报表

图14: 让ObjectDataSource 调用 GetSupplierBySupplierID (supplierID) 方法

使用查询字符串中SupplierID的值为 ProductsBySupplierDataSource的supplierID参数赋值.

Scott Mitchell的ASP.NET 2.0数据操作教程之九:跨页面的主/从报表

图15: 让supplierID 参数使用查询字符串中的SupplierID 的值

在设计视图中绑定FormView到ObjectDataSource时, Visual Studio 将会 自动的创建FormView的ItemTemplate, InsertItemTemplate 和 EditItemTemplate 三个模板, 这些模板使用Label和TextBox Web控件来呈现从 ObjectDataSource返回的数据. 因为我们只需要显示供应商信息, 可以移除 InsertItemTemplate 和 EditItemTemplat模板. 然后,编辑ItemTemplate模板,使 它在标签中显示供应商的公司名称, 在公司名称下面显示地址,城市,国家和电话 号码. 另外你也可以手工设置 FormView的 DataSourceID和创建ItemTemplate的 标记. 就像我们在后面”使用ObjectDataSource显示数据”一篇中的 所作的那样.

修改后,Formview的标记看起来应该是这 样:

<asp:FormView ID="FormView1" runat="server" DataKeyNames="SupplierID" DataSourceID="suppliersDataSource" EnableViewState="False">
<ItemTemplate>
<h3><%# Eval("CompanyName") %></h3>
<p>
<asp:Label ID="AddressLabel" runat="server" Text=''<%# Bind("Address") % >''></asp:Label><br />
<asp:Label ID="CityLabel" runat="server" Text=''<%# Bind("City") %>''></asp:Label>,
<asp:Label ID="CountryLabel" runat="server" Text=''<%# Bind("Country") % >''></asp:Label><br />
Phone:
<asp:Label ID="PhoneLabel" runat="server" Text=''<%# Bind("Phone") % >''></asp:Label>
</p>
</ItemTemplate>
</asp:FormView>

图16显 示了包含了供应商信息后的ProductsForSupplierDetails.aspx页面截 屏.

Scott Mitchell的ASP.NET 2.0数据操作教程之九:跨页面的主/从报表

图16: 包含供应商概括信息的产品列表

为 Produ

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站: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号