2

私は現在、発生した問題を書き留め、他の人が見ることができるようにそれらに答える小さなWebサイトを構築しています。現在、ここで説明されているようなDALを使用しています。現在、他のモデル、特にLinq2SQLとADO.netエントリフレームワークを使用したlinqベースのモデルを検討しています。たとえば、linqクエリを使用してトップリストを除外しているので、ある意味でデータアクセスをコードレイヤーに移動していることに気付きました。私がこれを始めた理由は、DALが常にDBと実際に同期していなかったためであり、DB内の何かを変更すると、null許容型がnull許容型ではなくなったためです。次に、テーブルをデータテーブルに再インポートすると、クエリが失われます。

私の簡単な質問は、今日ASP.netに適したDALが必要な場合、それは何でしょうか。提案、経験は大歓迎です。

4

3 に答える 3

8

私は個人的にLINQをSQLとADO.NETEntityFrameworkに優先しています。Microsoftの人たちは、最新のプロジェクトでもこれらのテクノロジを使用しています(たとえば、 KOBEプロジェクトを見てください)。したがって、Microsoftはこれら2つも推奨しています。

ただし、機能と実装を最大限に制御する必要がある場合は、 EnterpriseLibraryのDataAccessApplicationブロックと手動のDALコーディングを使用することがあります。

他の選択肢は次のとおりです。NHibernateSubSonic 、 LLBLGenProなどのさまざまなORMソリューション。


この主題に関する素晴らしい本:


関連ツール:

  • LINQPadは、LINQを学習するための優れた方法でもあります。本の200の例、一言で言えばC#3.0がプリロードされています。LINQと関数型プログラミングのクールさを体験するのにこれ以上の方法はありません。
于 2009-03-28T10:44:12.097 に答える
2

多くのオプションがあり、特定の状況に応じて、それぞれがより適切であることがわかる場合があります。いくつかのオプションが含まれます:

  • LINQ to SQL
  • ADO.NET Entity Framework
  • NHibernate
  • SubSonic
  • 手動で書く:)

私のデフォルトの選択はLINQtoSQLです。しかし、それは完全に個人的な好みです。多くの人がNHibernateの支持者です。

于 2009-03-28T10:39:32.293 に答える
0

私は現在のプロジェクトでOPF3を使用しています。これは主に、Pervasive.SQL v9.5 のサポートが優れているためです。サポートも素晴らしいです。

于 2009-04-06T20:17:42.713 に答える