4

「昔ながらの」VB6データベース開発者である友人が何人かいて、.NETとその機能、特にADO.NETについて話していました。

私たちの会話の中で、彼らはADO.NETに移行するよりもADOに固執したいという次の理由を提起しました。

  • データセットが切断されています(電源障害が発生した場合はどうなりますか?)
  • 同じ量のコードを書く必要があります
  • の新しいオプションDatasetBindingSourceおよびTableAdapter混乱しているようです
  • 同じコードがプログラムでデータベースにアクセスするように記述されています。変更されるのは、そのコマンドのレイアウト方法だけです。

Windowsフォームアプリケーションに関して、データアクセスに関してADO.NETがADOよりも「優れている」理由や答えを探しています。ADO.NETは、ADOが提供しないものを提供しますか?ADOよりも優れている点は何ですか?

注意: LINQを含まない例が欲しいのですが。

4

7 に答える 7

10

一方では、それが壊れていない場合は、それを修正しないでください。しかし、もう一方では-VB6?本当に?ADOとADO.NETのように聞こえますが、ここでは小さなジャガイモです...

問題はVB対VB.NETの方が多いと思います。その後、コードベース、スキルセット、その他の非技術的な考慮事項全体がここで関係します。

于 2009-07-21T17:46:18.293 に答える
6

ADOは、サポートされていないCOMベースのテクノロジーです。VB 6.0は、2008年3月の時点でサポートされていないテクノロジです。DAO、RDO、ADOはすべて、プライムを10年近く過ぎたテクノロジです。

ADO.NETは、データアクセス用の最新のツールセットです。特に、LINQ toSQLとEntityFrameworkは、データアクセスを新しい高さにします。

于 2009-07-21T17:47:45.700 に答える
5

従来のVB6アプリケーションでADOを使用しても問題はありません。そして、これらのアプリケーションが正しく機能している場合、それらを変更する理由はありません。

.Netでプログラミングしている人は、ADOを使おうとすると、そのようなハックの仕事のように感じるので、ADOを使おうとする誘惑に駆られることはないと思います。そのままにしてください。

于 2009-07-21T18:13:48.283 に答える
2

簡単な答え:彼らを説得しないでください...

LINQ to SQL(またはもっと良いのはLINQ to Entities)を見てもらいます

于 2009-07-21T17:45:47.403 に答える
2

私の日常業務で人々をADO.NETに切り替えることができた最大の問題の1つは、ADO(VB6フレーバー)がすべてCOMであり、ADO.NETを使用するとパフォーマンスが向上するという事実でした。

于 2009-07-21T18:02:20.037 に答える
0

私自身はADO.NETの方が好きですが、バランスを取るために、従来のADOにはADO.NETよりも優れている点が1つあります。それは、間違いなく使い勝手が良いことです。

お客様は、[ADO.NET]の初期化が広範囲にわたるため、[ADO.NET]の使用が難しいと感じていました。最も単純なシナリオでも、ユーザーはいくつかのタイプ間の複雑な相互作用と依存関係を理解することが期待されます...これらの問題の多くは.NETFramework2.0で対処されていることに注意してください。

.NET Frameworkのアーキテクトによって書かれた、.NETFramework設計ガイドライン第2版の25ページ。

于 2009-08-27T17:21:22.007 に答える
0

レコードセットがまだ接続されていて、サーバーの電源が切れている場合、ユーザーは保存されないデータを入力し続ける前に、アプリですぐにプロンプ​​トが表示されると思いますか?

メモリガベージコレクションはどうですか?

.netでは更新の配布が簡単です。

WinFormアプリ用のVB6に多くのコードがある場合、なぜ変更するのでしょうか。たぶん、VB.NETを使用して新しいプロジェクトを開始すると、テーブルアダプターに複数のテーブルを含めるなど、他のいくつかの利点を示すことができます(私がそれを利用したとは言えません)。

于 2009-07-21T18:25:16.420 に答える