为什么从ADO转换到ADO.NET?(Why switch from ADO to ADO.NET?

2019-09-20 00:47发布

我有一些朋友谁是“老派” VB6数据库开发人员,我告诉他们有关.NET和其功能,特别是ADO.NET。

在我们的交谈中,他们提出了以下原因,他们宁愿用ADO不是移动到ADO.NET坚持:

  • DataSet是断开连接(如果有什么权力失败了呢?)
  • 相同的代码量仍然有待完成
  • 的新选项DatasetBindingSourceTableAdapter显得扑朔迷离
  • 相同的代码编程写入访问数据库,所有的改变就是命令是如何布局

我在寻找答案或原因ADO.NET比ADO“好”与问候的数据访问,当谈到Windows窗体应用程序。 什么是ADO.NET提供ADO不? 这是什么比ADO做得更好?

注:我想不涉及LINQ的例子。

Answer 1:

在一方面,如果不破,不解决它。 但另一方面 - VB6? 真? 听起来像ADO与ADO.NET小土豆在这里...

我认为这个问题是比较VB与VB.NET然后整个代码库,技能设置,其他 - 非技术方面的因素都在这里发挥作用。



Answer 2:

ADO是不支持的基于COM的技术。 VB 6.0的生命不支持技术的终端为2008年3月DAO,RDO的,ADO是有近十年的老矣,尚能所有技术。

ADO.NET是用于数据访问的现代工具集。 特别是,LINQ to SQL和实体框架更上一层楼的数据访问。



Answer 3:

有没有错,在传统VB6应用程序中使用ADO。 如果这些应用程序都工作正常,没有理由去改变的。

我不认为在.net编程的人也会被诱惑,尝试使用ADO,因为它感觉像这样一个黑客的工作,当你尝试。 只是让他们可以。



Answer 4:

答案很简单:没有说服他们......

让他们看的LINQ to SQL(或更好,但LINQ到实体)



Answer 5:

其中之一是能够让人们在我的日常工作切换到ADO.NET最大的问题是事实,ADO(VB6味)是所有COM,你得到ADO.NET更好的性能。



Answer 6:

我听到一个谣言,VB6的运行时不能在Windows 7出货后...



Answer 7:

我猜如果记录仍然是连接和电源熄灭服务器上,用户将立即得到他们的不断进入,将不会得到保存数据之前提示在他们的应用程序?

如何内存垃圾收集?

分发更新是在.NET中更容易。

我想如果你有VB 6大量的代码为WinForm的应用为什么要改变? 也许如果你使用VB.NET启动一个新的项目,你可以像展示包括表适配器多个表的一些其他的好处(不能说我已经采取了这种优势)。



Answer 8:

我喜欢ADO.NET自己,但只是为了平衡,有经典的ADO在ADO.NET的一个优势:它可以说是更实用。

我们的客户发现它很难使用[ADO.NET],因为它需要的大量初始化的。 即使在最简单的情况下,我们希望用户了解几种类型之间复杂的相互作用和依赖性...请注意,这些问题很多是在.NET Framework 2.0中解决。

写的.NET框架的架构师,在.NET Framework设计准则第2版第25页。



文章来源: Why switch from ADO to ADO.NET?