エンティティ フレームワークにはデータベース ファーストのアプローチがあることを知っています。問題は、DAL (データ アクセス レイヤー) コード (モデルではない) を生成できるかどうかです。
2 に答える
オブジェクト リレーショナル マッパー (ORM) を使用する場合、通常、従来の意味での CRUD コードはありません。むしろ、これらの操作をよりオブジェクト指向の操作に抽象化します。
たとえば、「挿入」せずに、モデル クラスをテーブルに追加してから、変更を保存します。ORM は、オブジェクト モデルをデータ モデルと一致させるために必要な SQL を自動的に生成します。
私の要点は、あなたの質問は、ORM がどのように機能し、データ モデルとどのように関係しているかについての基本的な理解の欠如を示しているということです。おそらく少し読む必要があります。
「DAL コード」という言葉が具体的に何を意味するのかは、あいまいな用語であるため、よくわかりません。あなたのエンティティ型は DAL の一部であると考えます。
モデル ファーストまたはデータベース ファーストのアプローチを使用する場合、Entity Framework ツールは、モデル.edmxからコンテキスト クラスを自動生成できます。これは から継承されObjectContext
ます。.edmx から既に生成されているものをオンラインで見つけて、好みに合わせて変更することにより、生成されたコンテキスト クラスをT4 テンプレートで簡単にカスタマイズできます。
コード ファースト開発DbContext
では、通常は自動生成されない を使用します。詳細については、Scott Gu のブログのこの投稿を参照してください。