5

.net MVC プロジェクトで Entity Framework を ORM として使用しています。DAO (データ アクセス オブジェクト) を取得/保存/更新/削除するためのリポジトリ パターン (ジェネリック) を実装しました。また、すべてのビジネス ロジックを含むビジネス オブジェクトもあります。たとえば、私は Student という DAO と Student という BO (Business Object) を持っています。BO にはロジックが含まれ、DAO には DB に格納されたデータのみが含まれます。Student-Repository が DAO ではなく Business-Object を返す必要があるかどうか疑問に思っています。Automapper を使用して、Repository.Get() から DAO を返す前に DAO をビジネス オブジェクトに変換することで、これを実現できました。他のすべての方法と同じです。しかし、これは良い習慣ですか?

アップデート

データ アクセス レイヤー プロジェクトとビジネス ロジックのプロジェクトがあります。Entity Framework はエンティティを部分クラスで (データ アクセス プロジェクトに) 作成するので、実際にエンティティを他の部分クラスで拡張できますが、問題は、ビジネス プロジェクトでデータ アクセス プロジェクトを参照し、アクセス権がないことです。 Data Access プロジェクト内のロジック コード。そのため、ビジネス プロジェクト内にロジックを配置する必要がありますが、2 つのプロジェクトにわたって部分クラスを作成することはできないため、別の方法を使用する必要があります... または、問題をより適切に構造化して解決する方法を知っていますか?仕方?

4

2 に答える 2