私と私のチームは新しいプロジェクトを開始する予定で、いくつかの新しい (またはそれほど新しくない) テクノロジを調査およびテストする段階にあります。
今日まで、DBDataReaders、遅延読み込み用のプロキシ、場合によっては DataTables を備えた従来の ADO を使用していました。
チームは 3 人の開発者と 1 人のデータベース デザイナーで構成されています。私たちのプロジェクトは、それぞれ少なくとも 130 のテーブルで構成されています。
私たちの新しいプロジェクトは成長する可能性があるので、確実に 100 テーブルを見込んでいます。
私は過去 2 日間、EF5 を読んでいくつかの簡単なテストを行ってきましたが、それを使用する必要があるかどうかはまだ判断できません。
- 私たちは通常、大きなプロジェクトを多くの「モジュール」プロジェクトに分割して、ソース管理の下でより速く、より適切に作業できるようにします。DB全体に1つの大きな「edmx」を使用するつもりですか?
- データベース デザイナーがいるので、CodeFirst はオプションではないのではないかと思います。では、データベース ファーストのアプローチで EF を使用する価値はありますか?
- データベースの最初のアプローチを使用する場合、EF は十分にスマートで、すべての関係を正しく検出し、追加の構成なしで使用できるようになりますか? (追加の構成とは、DataAnnotations を記述するか、DbContext を無視する必要があることを意味します)
- 個人的には、SQL を使用してデータベースを設計することに自信を持っています。私が持っている唯一の煩わしさは、クラスリストでエンティティが変更されたときに、すべての選択、削除、更新、挿入スクリプトを更新する必要があるときです。EFがこれを処理してくれますが、これを除けば、パフォーマンスが遅くなり、慣れていないため、最終的には生産が遅くなると信じ始めています..
それは価値があると思いますか?
*DataAnnotations と DbContext ovveride を除いて、プレーンな T4 テンプレートを使用してテーブル (スキーマ) を作成する人はいますか?