質問のタイトルは明確ではないかもしれませんが、私がやりたいことは次のようなものです:
これが私のアプリをレイヤー化する方法です
アプリ.ドメイン アプリ.サービス アプリ.Web
私が欲しいのは、私が何かを要求/api/OrderProcessor/GetAllOrder
すると、メソッドを呼び出すことGetAllOrder
ですApp.Services.OrderProcessorService
。
メソッドは を返し、IList<Order>
特定の形式 (実際には ExtJS を使用しています) に従って JSON にシリアル化したいと思います。おそらく次のようになります。
{
success: true,
totalCount: 10,
list: [ { ... }, { ... } ]
}
サービスをコントローラーとして作成することはできますが、サービス層がプレゼンテーション要素で汚染されることは望ましくありません。
このようなラッパーコントローラーを作成するにはどうすればよいですか?
Service クラス自体に属性をアタッチしたくありません。IoC を使用して構成できればおそらくいいでしょう。後で、出力を XML にするか、代わりに DTO クラスを使用できるようにする必要があります。元のドメイン クラス。
何か案が?