论坛登陆 注册 教程 笑话 影视 投稿
首页 | 页界资讯 | 网络应用 | 软件应用 | 组网技术 | 网络原理 | 聊天通讯 | 网管知识 | 帮助
笑话 | 操作系统 | 注 册 表 | 编程开发 | 数 据 库 | 媒体动画 | 网页设计 | 图形图象 | 地图
论坛 | 网络安全 | 安全防范 | 服 务 器 | 硬件学堂 | 路由技术 | 搜索研究 | 站长经验 | 投稿
影院 | 教育频道 | 特色专题 | 精文荟萃 | 注 册 码 | 论坛社区 | 网站地图 | 广告服务 | 旧版
设为首页 加入收藏
当前位置:首页>>文章>>编程开发>>net专区>>正文

VS2005中使用强类型DataSet简化开发

www.xker.com 作者: 来源:天极 加入日期:2006-2-15 10:28:00

【问题提问、论坛交流】在日常开发中,为了编写数据的增加、更新、修改、删除等功能而不得不面对枯燥的代码,做重复又重复的工作.NET 2.0正式版的发布,对我们程序开发人员来说无疑是一件很大的喜事,Visual Studio 2005 的一些新的增强功能和ADO.NET 2.0的新特性让我们开发高可伸缩的多层数据库应用程序更加简单和快捷

  在.NET 1.1下就可以使用强类型数据集,可是在Visual Studio 2003里开发起来还是有一些不方便,在Visual Studio 2005里对DataSet的设计视图做了很大的改进,因为ADO.NET 2.0增加了TableAdapter对象,所以现在也可以在DataSet设计视图里添加DataTable的表适配器以前的typedDataSets只是一些数据实体(哑对象,只有属性的类)的集合,并不能很方便的自我管理持久化,以及数据完整性验证等现在可以很方便的实现这些

  下边通过一个例子来详细介绍如何通过vs2005来生成强类型DataSet简化开发流程,生成可伸缩性的多层数据库应用程序

  首先新建立一个Web网站项目,在[解决方案资源管理器]→[添加新项] →[数据集],命名为Authors.xsd,由于强类型DataSet需要放到App_Code目录,如果此时项目文件中没有App_Code目录,IDE会提示是否创建,我们选择"是"即可

  此时IDE会自动打开我们刚才建立好的Authors.xsd文件,并且开始运行TableAdapter配置向导,如果Web.Config没有数据库连结字符串,此时我们需要新建立一个连接:选择[新建连结] →[Microsoft SQL Server] →[选择系统自带的pubs数据库] →[将新建立的连结字符串保存到应用程序配置文件中]

  在接下来的选择命令类型的时候,IDE出来三个选项来供用户选择访问呢数据库的形式:

  1、 使用SQL语句,如果是单个表,向导可以自动生成 Insert,Update和Delete语句本例子也是使用的这种方法

  2、 创建新的存储过程同样如果是单个表,向导可以自动生成 Insert,Update和Delete语句

  3、 使用现有存储过程需要为每一个命令选择相应的现有存储过程

  我们这里选择[使用SQL语句] →[查询生成器] →[authors表,选择所有列],此时查询生成器会自动给我们生成 SQL语句(SELECT authors.* FROM authors)[高级选项],可以选择是否生成Insert,Update和Delete语句,使用开放式并发来防止并发冲突,刷新数据表,用来验证 Insert和Update语句,为了能够更清晰的介绍使用方法,我们这里全部都不选择,而让我们以后根据需要自行添加[选择要生成的方法] ,我们只需要使用[返回DataTable],其余的选项的对号去掉

  此时创建向导会自动给我们生成"Select语句","数据表的映射",以及"Get方法"我们创建的过程就结束了这是我们发现DataSet.xsd会自动生成一个authors表和一个包含Get方法的数据集authorsTableAdapter

  同样,在我们建立好的数据表[authorsTableAdapter]右键→添加查询,参照上边的方法生成DeleteQuery(删除),InsertQuery(增加),UpdateQuery(更新)、SelectDetail(返回详细结果,使用Select(返回行)选项,生成一个只包括一条数据的数据集) 以及ScalarQuery(返回数据统计)

  以下是生成的SQL语句,需要手工修改成自己需要的代码:

DeleteQuery:DELETE FROM [authors] WHERE ([au_id] = @Original_au_id)
InsertQuery:INSERT into authors (au_lname,au_fname,phone,address,city,state,zip,contract) values (@au_lname,@au_fname,@phone,@address,@city,@state,@zip,@contract)

UpdateQuery :UPDATE authors set au_lname=@au_lname,au_fname=@au_fname,phone=@phone,
address=@address,city=@city,state=@state,zip=@zip,contract=@contract where au_id=@au_id

SelectDetail:SELECT authors.* FROM authors where au_id=@au_id

ScalarQuery :SELECT COUNT(*) FROM authors

  打开Default.aspx,并添加一个GridView控件,并且添加一个ObjectDataSource控件,配置ObjecctDataSource的数据源,此时我们会发现在配置的时候系统已经认出来我们刚才建立的强类型DataSet了,[选择业务对象] →[authorsTableAdapters.authorstableAdapter] →[定义数据方法]分别选择Select,Update,Insert,Delete的方法,即我们刚才建立的DeleteQuery,InsertQuery,UpdateQuery,SelectDetail,ScalarQuery和系统生成的GetDate]此时配置ObejctDataSource就完工了

本新闻共2页,当前在第1页  1  2  

编辑:xker.com

上一篇:十天学会ASP.net之第二天
下一篇:没有了
关闭窗口】【浏览次数:】【收藏此页
相关文章
推荐文章 最新文章 热门文章
·自己动手:电子图书制作之PDF格式篇
·VS2005中使用强类型DataSet简化开发
·时间就是第一 快速启动程序我有妙招(
·提高效率:屏蔽WinXP中不需用到的功能
·情人节怎么过?Ps超强打造逼真钻石戒
·彻底分析卸载软件 不再请神易送神难
·构建Linux系统下U盘路由器 防火墙(图
·免费中文DOS系统备份恢复程序打造记
·中小企业服务器托管经验完全手册
·家用宽带ADSL上网共享从细节处入手(图
·给系统找个随叫随到的免费修理工
·不再陌生 应对未关联文件几妙招
·让你的“小猫”发传真技巧攻略
·活学活用Win XP中的Regsvr32命令
·局域网中网线应用全方位测试
·微软:6月30日Win98支持全面停止
·网站成功策划必杀术
·局域网共享新法 我能让文件隐形躲起来
·自己动手:电子图书制作之PDF格式篇
·VS2005中使用强类型DataSet简化开发
·简单几招教您如何检测液晶
·C++/CLI中实现singleton模式
·如何用 Hibernate 实现分页查询
·结合struts和hibernate谈J2EE架构的数
·在Spring中配置Hibernate事务(图)
·Hibernate+Spring+Struts扩展Struts
·怎样利用Hibernate开发Blog实例分析
·Struts中用PlugIn扩展Hibernate的例子
·精通Hibernate之映射继承关系五
·精通Hibernate之映射继承关系四(图)
·个人简历表格
·免费代理IP(每日更新)
·QQ密码丢失后能做的事情:快速找回密码
·Norton AntiVirus 2006 注册码(激活
·WinRAR 3.51 注册码
·豪杰超级解霸V9.1正版注册码
·找回QQ密码的注意事项 
·系统优化 专题
·史上最强QQ个人档案资料欣赏
·最经典的黑客入门教材
·求职简历封皮
·ACDSee v8.0注册码
·Ajax技术开发指南
·怎样查找对方的IP地址
·FlashFXP 3.3.1 build 1089注册码
评论

设为首页 - 版权声明 - 广告服务 - 关于我们 - 联系我们 - 友情连接
Copyright © 2003-2006 xker.com All rights reserved. 网站合作、广告联系QQ:12231446
小新技术网 冀ICP备05002857号