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

返回“ASP.NET 2.0数据教程目录”

导言:

在前面的3章里我们为处理二进制数据添加了很多的功能。我们 首先在表Categories里添加BrochurePath列,并更新了体系结构。同样,为了处 理表Categorie里现有的Picture列,我们在数据访问层和业务逻辑层里增加了相 应的方法。同时我们创建一个页面,在GridView控件里显示二进制数据 ——包含一个指向说明小册子的下载链接,并将每个类的图片显示在 <img>元素里。同时我们添加一个DetailsView控件,供用户添加新的类, 并上传其图片和小册子数据。

剩下的就是添加编辑和删除功能,本章我们 将通过GridView控件内建的编辑和删除功能来实现。当编辑一个类时,我们允许 用户用任意指定的图片将原来的换掉;也可以用新的小册子将现有的替换掉,甚 至不再包含小册子文件。让我们开始吧!

第1步:更新数据访问层

虽然数据访问层包含自动生成的Insert, Update和Delete方法,但它们都基于 CategoriesTableAdapter的主查询,因此并不包含Picture列。自然,Insert和 Update

方法也不包含picture列的相应参数。就像56章做的那样,我们需 要为更新Categories表而创建新的TableAdapter方法。

右键点击 CategoriesTableAdapter的顶部,选择“添加查询”,打开 TableAdapter查询设置向导,我们首先选择“使用SQL语句”,点Next ,再选“UPDATE”,再点Next.


图1:选择“UPDATE”选项

我们现在需要指定UPDATE SQL语句。向导自动创建一个基于TableAdapter主查询的UPDATE语句(它更新 CategoryName, Description和BrochurePath值)。更新该语句以包含Picture列 ,以及@Picture参数,像如下这样:

UPDATE [Categories] SET
  [CategoryName] = @CategoryName,
  [Description] = @Description,
  [BrochurePath] = @BrochurePath ,
   [Picture] = @Picture
WHERE (([CategoryID] = @Original_CategoryID))

最后,向导要求我们为新的 TableAdapter方法命名,我们取为UpdateWithPicture,再点Finish。


图2:为新方法命名为UpdateWithPicture

时间: 2025-01-24 01:29:10

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

在ASP.NET 2.0中操作数据之五十七:在分层架构中缓存数据_自学过程

导言: 正如前面章节所言,缓存ObjectDataSource的数据只需要简单的设置一些属性.然而,它是在表现层对数据缓存,这就与ASP.NET page页面缓存策略(caching policies)紧密的耦合(tightly couples)起来.我们对体系机构分层的原因之一便是打破这种耦合.拿业务逻辑层为例,将业务逻辑从ASP.NET页面脱离出来:而数据访问层将数据访问的细节ASP.NET页面脱离出来.从某种意义来说,将业务逻辑和数据访问细节脱离出来是首先,这样的话使系统更易读.易维护.易

在ASP.NET 2.0中操作数据之五十五:编辑和删除现有的二进制数据_自学过程

导言: 在前面的3章里我们为处理二进制数据添加了很多的功能.我们首先在表Categories里添加BrochurePath列,并更新了体系结构.同样,为了处理表Categorie里现有的Picture列,我们在数据访问层和业务逻辑层里增加了相应的方法.同时我们创建一个页面,在GridView控件里显示二进制数据--包含一个指向说明小册子的下载链接,并将每个类的图片显示在<img>元素里.同时我们添加一个DetailsView控件,供用户添加新的类,并上传其图片和小册子数据. 剩下的就是添加编辑

ASP.NET 2.0数据教程之四十七:使用SqlDataSource控件查询数据

返回"ASP.NET 2.0数据教程目录" 导言 到目前为止,我们所做的教程都使用了一个包含表示层.业务逻 辑层以及数据访问层的分层架构.在第一节教程(创建一个数据访问层)中,我 们讲解了数据访问层(DAL),第二节教程(创建一个业务逻辑层)中,我们又讲 解了业务逻辑层.从教程"使用ObjectDataSource展现数据"开始, 我们看到了如何在这个架构里面,通过使用ASP.NET2.0中新出现的 ObjectDataSource控件在表示层展示数据. 所有的这些

在ASP.NET 2.0中操作数据之五十三:在Data Web控件显示二进制数据_自学过程

导言: 在前面的教程我们阐述了应用程序处理二进制数据的2种模式,以及使用FileUpload 控件从浏览器向服务器文件系统上传文件.当文件上传并存储在文件系统里时,应在相应的数据库记录里存储该文件的存储路径. 我们先来看如何为最终用户提供二进制数据.怎样展示二进制数据呢?这取决于其类型.比如图片,我们将其显示为image:如果是PDFs,Microsoft Word文档.ZIP文件或其它类型的数据,或许提供一个"Download"链接比较妥当. 在本节,我们看如何在GridView和D

在ASP.NET 2.0中操作数据之五十二:使用FileUpload上传文件_自学过程

导言: 到目前为止,我们的教程围绕的是text数据.然而,很多应用程序既需要处理text数据,也需要处理二进制数据.比如招聘网站可能需要用户上传Word或PDF格式的简历. 使用二进制数据面临一项挑战:在应用程序中如何存储二进制数据.我们必须更新添加记录的界面以支持用户上传本地电脑中的文件,并添加额外的功能以下载某条记录的相关二进制数据.本章以及接下来的3章,我们探讨如何处理这些问题.在本系列教程结束时,我们将创建一个功能完善的应用程序,它为每种类型的记录提供相关的图片和PDF小册子. 在本系列

ASP.NET 2.0数据教程之六十七:在TableAdapters里创建新的存储过程

返回"ASP.NET 2.0数据教程目录" 导言: 本教程的Data Access Layer (DAL)使用的是类型化的数据集 (Typed DataSets).就像我们在第一章<Creating aData Access Layer>里探讨 的一样,该类型化的数据集由强类型的DataTable和TableAdapter构成. DataTable描绘的是系统里的逻辑实体而TableAdapter引用相关数据库执行数据访 问,包括对DataTable填充数据.执行返回标量数

ASP.NET 2.0数据教程之五十九:体系分层缓存数据

返回"ASP.NET 2.0数据教程目录" 导言: 正如前面章节所言,缓存ObjectDataSource的数据只需要简单的设 置一些属性.然而,它是在表现层对数据缓存,这就与ASP.NET page页面缓存策 略(caching policies)紧密的耦合(tightly couples)起来.我们对体系机构分层 的原因之一便是打破这种耦合.拿业务逻辑层为例,将业务逻辑从ASP.NET页面脱 离出来:而数据访问层将数据访问的细节ASP.NET页面脱离出来.从某种意义来说 ,将业务逻

ASP.NET 2.0数据教程之五十八:用ObjectDataSource缓存数据

返回"ASP.NET 2.0数据教程目录" 导言 就计算机科学而言,caching就是将所需要的数据或信息的备份放 在某个地方,便于快速访问的这样一个过程.以数据处理(data-driven)程序为 例,程序的大部分时间浪费在数据查询上.要提升这种程序的性能,通常的做法 是将查询结果存放在程序的存储器里. ASP.NET 2.0提供了各种各样的缓 存方式.对web页面和用户控件可以通过output caching进行缓存:同样我们可以 通过ObjectDataSource 和SqlDa

ASP.NET 2.0数据教程之五十六:添加新记录时包含一个文件上传选项

返回"ASP.NET 2.0数据教程目录" 导言: 在前面2节教程,我们探讨了如何使用FileUpload控件从客户端 向服务器上传文件,以及如何在数据Web控件里显示二进制数据. 在本节 ,我们将创建一个web页面以添加新的种类.除了为类的name和description属性 添加TextBoxes控件外,我们还要在页面上添加2个FileUpload控件 --一个用来上传新类的图片,另一个用来上传类的小说明册子.上 传的图片将直接存储在新记录的Picture列.与此相反,小册子将存储