CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  ASP.NET

菜鸟问题:使用dataset有什么好处?

楼主sgh321(华海)2005-11-08 00:54:00 在 .NET技术 / ASP.NET 提问

我以前开发的主要使用了com+技术,c/s   三层结构,数据库操作也主要是用存储过程,现正在学习.net,都说dataset采用离线访问技术,可我总感觉在性能上差别不大啊,也不如直接调用存储过程来得顺手,各位的高见呢? 问题点数:20、回复次数:7Top

1 楼yumei20001(纳兰一笑)回复于 2005-11-08 07:50:48 得分 2

你可以把数据用存储过程读到dataset,然后对dataset里的datatable进行处理,譬如修改,删除,添加,当你的数据量很大的时候,如几百万条的时候,效果应该比较明显  
   
   
  Top

2 楼njuzgj(罐子)回复于 2005-11-08 07:58:20 得分 0

楼上回答的不错Top

3 楼cuike519(I will be back!)回复于 2005-11-08 08:01:36 得分 3

主要是提供了更好的编程模型。  
   
  ==》如几百万条的时候,效果应该比较明显  
  这个放到DataSet里面恐怕比较耗内存吧?Top

4 楼ChengKing((.net: http://blog.csdn.net/ChengKing ))回复于 2005-11-08 08:11:46 得分 10

(1)。  
  离线状态是指DataSet是把ado.net采用无持续连接访问方式,并且DataSet取得数据后  
  虽断开连接,但它的数据还保存.       在对DataSet记录集进行操作时,不需要一直维持着  
  连接。当更新到数据库时,再打开连接  
   
  (2)。如果调用用WebService,DataSet可以XML序列化,专门用来传递数据库数据信息.  
      XML   WebService和SOAP标准支持的数据类型  
      不知道读者有没有遇到这种情况,在调用WebService并给一个方法传递了一个DataRow参数时,运行  
      时会抛出异常:   "没法将参数序列化!",如果把DataRow加入到DataSet中,并将DataSet作为参数  
      传递再运行就OK了。   这是因为:XML   WebService只能对数据集DataSet对象类型进行XML序列化,  
      不能对DataRow对象类型进行XML序列化造成的错误.     所以了解一下XML   WebService支持序列化的基  
      本数据类型是比较重要的.它支持的数据类型如下:  
      1.基本数据类型.      
              标准类型,如:int   float   bool   DateTime   string等基本数据类型  
      2.枚举.  
              支持枚举Enum定义的类型  
      3.自定义对象.  
              可以传递任意基于自定义类或结构创建的对象。   但要注意一点:   它只能传输数据成员(变量和属性).  
              如果定义了方法,则方法不能进行序列化传输,序列化后只剩下数据成员.  
      4.DataSet对象  
              支持DataSet,切记:不支持DataTable和DataRow,DataSet已经是XML   Webservice能够支持的最小的可序列化对象.  
      5.XmlNode对象  
              基于XmlNode的对象可以表示XML文档的一部分.  
      6.数组和集合  
              可以使用任何被支持的类型的数组和简单集合,包括:   DataSet对象/XmlNode对象和自定义对象.  
   
  对程序员来说感觉到差不多一样,但不管在应用程序,还是数据库性能上都有所提高  
   
   
       
  Top

5 楼jxufewbt(我的目标是5星)回复于 2005-11-08 08:12:13 得分 0

楼上正解Top

6 楼sgh321(华海)回复于 2005-11-08 09:46:39 得分 0

可是使用dataset来修改,增加数据时,怎样来体现诸如事务等操作呢?是不是对dataset填充表结构后,诸如数据规则、索引也要重新设置?那好像也增加了编程的工作量?Top

7 楼Ivony(授人以鱼不如授人以渔,上海谋生)回复于 2005-11-08 09:54:14 得分 5

视情况而定,DataSet在某些方面(例如大量数据的更新同步,对数据进行非常复杂的处理),用起来非常方便,因为它是离线的,你想怎么弄就怎么弄。  
   
  但是在数据实时操作,事务处理,数据检索,聚合等方面就比较麻烦了。Top

相关问题

  • 菜鸟问题:MySql有什么好处?
  • 菜鸟求教 :dataset的筛选问题
  • 菜鸟请教:1delphi有什么好处——与别的语言相比
  • 菜鸟问题“Query1:dataset not in edit or insert mode.”怎么解决?
  • 菜鸟请教:为什么我Fill DataSet会出错?
  • 菜鸟问题:如何判断dataset,oledbdatareader对象为空?
  • 一个关于DataSet绑定的菜鸟问题
  • 菜鸟请教 DataSet 列的选择列怎么用
  • 问个菜鸟得问题~~关于dataset表 问题如下:
  • 菜鸟问题:如何取dataset中表的某个字段的值??

关键词

  • 数据
  • 序列化
  • webservice
  • 数据库
  • 存储过程
  • 连接
  • 结构
  • xml
  • dataset
  • 对象

得分解答快速导航

  • 帖主:sgh321
  • yumei20001
  • cuike519
  • ChengKing
  • Ivony

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo