データベース内のデータの表現ではなく、ビジネス目的で必要なカスタムメイドのエンティティをどうするかについて質問があります。
私のソリューションは次のように構成されています。
- エンティティアセンブリ(POCOオブジェクト)
- リポジトリアセンブリ(EFコードファースト)
- ビジネスレイヤーアセンブリ
- UIアセンブリ(MVC)
エンティティアセンブリには2つのエンティティがA
ありB
、ビジネスロジックの特定の目的のために、(他のプロパティの中でも)両方を含むオブジェクトを返す必要があります。
class X
{
public A[];
public B[];
}
このオブジェクトをリポジトリから直接返す必要がありますか?または、ビジネスレイヤーは、を呼び出してからrepo.GetA
作成repo.GetB
しX
て返す必要がありますか?
この場合、ビジネスレイヤーにオブジェクトを作成するのが理にかなっているかもしれません。しかし、クラスがとの「groupby」だった場合はどうなるでしょX
うか。次に、リポジトリからそれを返す方が理にかなっています。A
B
特効薬はないと思いますが、ガイドラインはありますか?
乾杯。