3

私たちのグループには、すべてのデータベースを管理する DBA がいます。Code First の使用を開始しましたが、問題なく動作しています。現在、データベース ファーストのアプローチを使用する必要があるという提案がありますが、私が知る限り、これには図でマッピングを行う必要があり、Fluent API を使用することはできません。

POCO クラスのアイデアに満足しているので、Code First をそのまま使用するのが最善でしょうか、それとも EDMX ファイルと従来の作業方法を使用することに (ストアド プロシージャの使用以外に) 特定の利点がありますか?

4

1 に答える 1

3

主な利点は柔軟性であり、コード生成を回避し、物事が舞台裏でどのように作成されるかをより詳細に制御できます。

コードでマッピングを定義すると、マッピング戦略、微調整、および構成に関してより強力になります。

要約すると、ドメインはデータベース駆動型ではありません。ドメイン モデルがあり、それに適合する必要があるのはデータベースです。私にとって、これは本格的な OR/M を使用した本格的なドメインである必要があります。OR/M は、真のオブジェクト指向ドメインを構築することを可能にしながら、非常に異なる世界であるリレーショナル モデルとの相互運用の苦痛を処理します。

プラットフォームに依存しない中立的なドメイン モデルが本当に必要な場合は、Code-First が最適です。

私の偏見かもしれませんが、私の意見は深刻で、中規模から大規模または優れたプロジェクトは Code-First で開始および実行する必要があります。コード生成と EDMX パラダイム、およびこの種のシュガーは、ドメインがそれほど複雑でない場合に機能します。複雑になると、独自のデータおよびドメイン戦略に取り組む必要があります。

于 2013-03-15T11:23:41.557 に答える