4

現在、タマネギアーキテクチャを使用してVisualStudioソリューションをセットアップしています。ソリューションの構成方法についてはかなりよく理解していますが、少し問題が発生しています。私のソリューションは複数のAPIを使用しています。これらのAPIは、WCF、Soap Webサービス、およびRESTサービス用のRESTSharpを使用して使用されます。これをどのように構成するかわかりません。

最大の混乱は、RESTSharpだけでなく、シリアル化に使用されるいくつかのPOCOクラスも使用するため、RESTサービスに関するものです。私も持っています:

ApiResult<T> where T is any of the POCO classes.

私の最初の考えは、すべてがApiResultを返すインターフェイスを実装するInfrastructure.RestSharpを作成することでしたが、問題は、これらのPOCOクラスとApiResultをどこに配置するかです。インターフェイスがそれらを使用しているため、コアのどこかに移動する必要がありますが、どこに配置するのが適切でしょうか。

WCFとSOAPサービスはどうですか?Infrastructure.WebServicesを作成しますか?

4

1 に答える 1

5

多分これは役立つでしょう。これは、OnionArchitectureを使用してVisualStudioプロジェクトをセットアップするために使用する図です。矢印は、どのプロジェクトが他のプロジェクトを参照しているかを示しています。青いボックスは私が作成したプロジェクトです。オレンジ色のアイテムは、サードパーティプロジェクトまたは.NETAPIです。

  • UnitTests、Web(UI)、および依存性注入とデータアクセス層のプロジェクトはすべて、タマネギの外側の層にあります。
  • すべての参照はコアに向かって内側を指します(横を指すことができる外側のレイヤーを除く)。
  • すべてのAPIは、外部レイヤープロジェクトを介してアクセスされます。

タマネギのアーキテクチャ図

于 2012-10-01T16:06:13.147 に答える