0

CAGドキュメントのすべてのQuickStartsとRIの例は優れていますが、エンタープライズ規模の例が不足しています。

40以上のモジュールがあり、それぞれにProxy、Facade、PresentationModel、Model、Viewsが含まれているとします。各モジュールは、IISまたはスタンドアロンコンソールホストでホストされるモジュール固有のWCFサービスも呼び出します。私たちのアプローチは、UIモジュール、サービスモジュール、および関連するテストを1つのソリューションに含めて、他のモジュールとは別に開発およびテストできるようにすることでした。

私の問題は、サービスが別々のモジュールにあるときにサービスのホスティングをどのように行うべきか、そしてF5を押したときに残りのアプリケーションモジュールと一緒に別々のモジュールを実際に実行する方法です。このためのベストプラクティスはありますか?私はそれが以前に行われたと思いますか?

4

2 に答える 2

1

確かに、各モジュールをサービスポイントのアプリケーションまたは仮想ディレクトリインスタンスとしてホストできますが、ソリューションパーティショニングの開発「利便性」によって、サービスの本番アーキテクチャが決まるのではないかと思います。通常、これはモジュールパーティションではなくレイヤーに基づいて処理されます。つまり、ドメイン/モデルを含むプロジェクトとサービスを含むプロジェクトがあり、各「モジュール」はサービスの共通プールを参照できます。モジュールの相互関係や相互通信の程度などにもよると思います。

各サービスは異なるポートまたはターゲットで実行するように構成できますが、ここでも、問題はサービスのアーキテクチャに起因していると思います。モジュール間で共有される共通のサービスプロジェクトを使用することでメリットが得られる可能性があります。

于 2010-06-03T15:51:05.207 に答える
1

最終的には、ホスティングプロジェクトを「スタートアップ」プロジェクトとしてソリューションに含めるという非常に単純なソリューションになりました。プロジェクトはビルドせず、モジュールの依存関係を持つように設定されています。

すべてのサービスDLLは、ホストプロジェクトが動的にロードしている共通フォルダーに出力され、ServiceContract属性を探して、ホストを起動します。

于 2010-06-15T15:06:05.157 に答える