Entity Frameworkの使用を開始したばかりですが、ビジネスレイヤーのクラスが、EntityFrameworkによって作成されたエンティティにどのように適合するかについて混乱しています。
従来のADO.NETを使用する場合、たとえばCustomerというクラスがあり、次にデータベースの相互作用を処理するDALCustomerという別のクラスがあります。この構造では、DALのインスタンスを計算、フィルタリング、および削除するためのコードを配置します。 Customerクラスで保存、更新、および削除するためのCustomer。
Entity Frameworkを使用すると、Customerというテーブルがある場合、Entity FrameworkはCustomerというエンティティを作成します。これが私の混乱の始まりですが、このエンティティはビジネスレイヤーでのCustomerの必要性を排除しますか?では、本質的に、通常はビジネスレイヤーにあるすべてのフィールドとメソッドは、EntityFrameworkによって生成されたエンティティに含まれるのでしょうか。または、たとえばCustomerBLと呼ばれるビジネスレイヤーに、計算、フィルタリングに必要なビジネスロジックを実行するために必要なフィールドとメソッドが含まれ、データアクセスを処理するために宣言されたEF DALのインスタンスが必要なクラスがまだ存在する必要がありますか?
ビジネスクラス(この場合はCustomerBL)が必要な場合、もう1つの質問が頭に浮かびます。これは、顧客エンティティで作成されたフィールドをCustomerBLで再作成するか、顧客エンティティのインスタンスをCustomerBLで宣言して、 2つの場所でフィールドを宣言する必要はありませんか?