大規模な従来の ASP データベース アプリケーションを ASP.Net に変換する計画の初期段階にあり、使用するデータ アクセス方法を選択するのに苦労しています。Linq To SQL、動的データ、厳密に型指定されたデータセット、エンタープライズ ライブラリ (データ アクセス アプリケーション ブロック)、および Entity Framework を少し試してみましたが、どれも「1 つ」として思い浮かびませんでした。選択肢が多すぎます - 私の頭は泳いでいます、選択を手伝ってください!
おそらく、私が変換しているアプリケーションの背景と優先順位を説明すると役立つでしょう...
バックエンドは Microsoft SQL Server (2005 以降) であり、私たちはそれにコミットしているため、別のデータベース プラットフォームのサポートについて心配する必要はありません。
データベースは非常に完成度が高く、大量のビジネス ロジックが含まれています。これは高度に正規化されており、ストアド プロシージャ、トリガー、およびビューを広範囲に使用します。同時に 2 つの車輪を再発明したくないので、データベースへの変更はできるだけ少なくしたいと考えています。そのため、データベースの癖に対処できるほど柔軟なデータ アクセス方法を選択する必要があります。
このアプリケーションには、多くのデータ入力フォームと広範な検索およびレポート機能があります (レポートは別の獣ですが、後で取り組みます)。
アプリケーションは、データベース構造の小さな変更に対応できる柔軟性を備えている必要があります。アプリケーション (およびデータベース) は、データベースに小さなカスタム変更が加えられた別のサイトにインストールされる場合があります。理想的には、アプリケーションがデータベースの拡張機能を識別し、適切に反応することができます。つまり、O/R マッピングをアプリケーションに格納する必要がある場合、アプリケーションとデータベースを新しいサイトにインストールするときに、それを交換 (または簡単に更新) できる必要があります。
迅速なアプリケーション開発が重要です。データベースはすでに完成しており、ユーザー インターフェイスは既存のアプリケーションとほぼ同じになる予定なので、これをすぐに開始できるものを見つけたいと思っています。開発の時間を節約できるのであれば、絶対に最新かつ最高のテクノロジーを使用しないことを犠牲にしても構わないと思っています。言い換えれば、Entity Framework のようなものを使用するのに急な学習曲線がある場合、プロセスが高速化されるのであれば、厳密に型指定されたデータセットやカスタム DAL などを使用しても問題ありません。
私は ASP.Net の初心者ですが、Classic ASP、T-SQL、および古い ADO (切断されたレコードセットなど) には精通しています。データ アクセス方法のいずれかが私のバックグラウンドを持つ人により適している場合は、その方向に傾く可能性があります。
あなたが提供できるアドバイスをありがとう!