私はapi、アプリケーション、ドメイン、データ層を含むオニオンアーキテクチャのC#でリポジトリpaternを使用しています。アプリケーション層またはビジネス層のリポジトリデータを変換しますか?
私は、アプリケーション層では、データレイヤーから受け取ったデータがわずかに異なるフォーマットになる必要があることに気付きました。例えば、アプリケーション層は、このような
GetPeriods()
2017-01-01 2017-01-31 50
2017-02-01 2017-02-28 70
etc
としてデータ層からのデータを期待している。しかし、アプリケーション層のセクションで私はまた、このような私が欲しい
GetPeriodsAsDays()
2017-01-01 50
2017-01-02 50
etc
として一日のリスト形式でこのデータを取得する必要があります私は、correcly両方のリポジトリパターンとタマネギのアーキテクチャを理解していることを確認しますと、私の質問はするべきI
a)に行う私はデータ層からのデータをreciveした後、アプリケーション層におけるTransformPeroidsToDays(GetPeriods)
または
b)は絶対にあなたがアプリケーション層でTransformPeroidsToDays(GetPeriods)
をしたいデータ層でGetPeriodsAsDays()を行うと、既にアプリケーション層
データレイヤーがCRUD操作に関係する必要があると言えば、私はあなたに非公式のデータ操作でもある検索操作を含めることを前提としています。 – mko
これは膨大な議論の話題ですが、クエリー内のデータを操作する方法はあまりありません。データをPOCOにプルするエンティティテーブルに対してただちにクエリを実行します。これは、Entity FrameworkやNHibernateなどのORMツールを使用することを可能にします。 –
私はそれに同意することができます。あなたは言う... ORMを使用することを可能にする。申し訳ありませんが、何が可能になりますか? – mko