多層 (3 層) アプリケーションを作成したいと考えています。EF は最適な ORM です。
EF がプレゼンテーション レイヤーで直接作成するエンティティを使用する必要がありますか?それとも、新しいカスタム エンティティを作成してエンティティをマップする必要がありますか? その場合、カスタム エンティティの上にインターフェイスを作成する必要がありますか?
EF が生成する .edmx ファイルをデータ層に配置する必要がありますか?
ありがとう
多層 (3 層) アプリケーションを作成したいと考えています。EF は最適な ORM です。
EF がプレゼンテーション レイヤーで直接作成するエンティティを使用する必要がありますか?それとも、新しいカスタム エンティティを作成してエンティティをマップする必要がありますか? その場合、カスタム エンティティの上にインターフェイスを作成する必要がありますか?
EF が生成する .edmx ファイルをデータ層に配置する必要がありますか?
ありがとう
データベースのニーズとデータ コンシューマのニーズはしばしば対立するため、通常は異なるモデルが必要になります。
たとえば、新しい顧客を追加するユーザー ストーリーを考えてみましょう。ストーリーには通常、オフィスの電話番号とファックス番号の「必要性」が含まれます。
すぐに、データベース設計者は「これはデータの繰り返しです」と言うでしょう。1 対多の関係が必要です。これにより、2 つの電話番号だけでなく、事実上無限の数の電話を種類別に収容できるようになります。(そして、電話番号が多対多または 1 対多であることに煩わされないようにしましょう)
一方、レポート、画面、モバイル デバイス、UI の経験はありますか? そのデザイナーは、「保存できる電話番号の数は気にしません。オフィスの 2 つだけを扱うつもりです」と言っています。番号、およびファックス番号」ユーザーは核心で非正規化されていると言えます:)