快速业务通道

ASP.NET 2.0数据教程之五十七:编辑和删除现有的二进制数据

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-05-21
te数组包含的是类的picture数据,int代表类记录的CategoryID, 我们注意到,当传入的byte数组为null时,第一个方法将调用第二个方法。

[System.ComponentModel.DataObjectMethodAttribute
   (System.ComponentModel.DataObjectMethodType.Update, false)]
public bool UpdateCategory(string categoryName, string description,
   string brochurePath, byte[] picture, int categoryID)
{
  // If no picture is specified, use other overload
  if (picture == null)
    return UpdateCategory(categoryName, description, brochurePath, categoryID);

  // Update picture, as well
  int rowsAffected = Adapter.UpdateWithPicture
     (categoryName, description, brochurePath, picture, categoryID);

  // Return true if precisely one row was updated, otherwise false
  return rowsAffected == 1;
}

[System.ComponentModel.DataObjectMethodAttribute
   (System.ComponentModel.DataObjectMethodType.Update, true)]
public bool UpdateCategory(string categoryName, string description,
   string brochurePath, int categoryID)
{
  int rowsAffected = Adapter.Update
    (categoryName, description, brochurePath, categoryID);

  // Return true if precisely one row was updated, otherwise false
  return rowsAffected == 1;
}

第3步:拷贝功能

在56章里,我们创建了一个 UploadInDetailsView.aspx页面,在一个GridView控件列出所有的类,再通过一 个DetailsView控件来添加新的类。在本教程,我们将扩展GridView控件以支持编 辑和删除功能。不过我们不再使用UploadInDetailsView.aspx页面,让我们在 ~/BinaryData文件夹里创建一个新页面,UpdatingAndDeleting.aspx,将 UploadInDetailsView.aspx页面的声明代码复制并粘贴到页面 UpdatingAndDeleting.aspx.

打开UploadInDetailsView.aspx页面,将其 <asp:Content>元素里的声明代码复制下来,就像图3那样。接下来,打开 UpdatingAndDeleting.aspx页面,把代码粘贴在<asp:Content>元素里。同 样的,将UploadInDetailsView.aspx页面的后台代码拷贝到 UpdatingAndDeleting.aspx。

ASP.NET 2.0数据教程之五十七:编辑和删除现有的二进制数据

图3:将UploadInDetailsView.aspx页面的声明代码拷贝下来

完 成后,登录UpdatingAndDeleting.aspx页面,你将会看到相同的输出效果。感觉 用起来和UploadInDetailsView.aspx页面一样。

第4步:添加 ObjectDataSource和GridView的删除功能

就像在教程16《概述插入、更新 和删除数据》里探讨的一样,只要GridView控件绑定的数据源支持“删除 ”功能,我们就可以为GridView控件启用删除功能。不过,GridView控件绑 定的ObjectDataSource(也就是CategoriesDataSource)目前并不支持删除。

为支持删除,在ObjectDataSource的智能标签里点“配置数据源 ”,一直点到“定义数据方法”界面。虽然当前只指定了 ObjectDataSource控件InsertMethod属性和SelectMethod属性,但向导自动地分 别为UPDATE标签和DELETE标签指定UpdateCategory方法和DeleteCategory方法。 为什么呢?因为我们在CategoriesBLL类里为上述2种方法使用了 DataObjectMethodAttribute属性,作用是分别使其成为默认的“更新 ”和“删除”方法。

不过现在我们在UPDATE标签的下拉 列表里选“(None)”, 而 DELETE标签里仍然为DeleteCategory方法。 我们将在第6步添加更新功能。

ASP.NET 2.0数据教程之五十七:编辑和删除现有的二进制数据

图4:设置ObjectDataSource控件使用DeleteCategory方法

注意 :

完成设置后,Visual Studio会问你是否&ldq

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