0

最近、ほとんどの内部ソリューションに次の一般的な構造を採用しました。

SolutionRoot
    Interfaces
    Models
    Services
    Repositories
    Web

ここServicesで、、RepositoriesおよびプロジェクトWebへの直接参照のみがInterfacesありModelsます。すべての依存関係はIoCコンテナを介して管理されます(内部フレームワークでカスタムラッパーを作成しました)。もちろん、独自の外部依存関係のセットがある場合もありますServicesRepositories

これで、MVCプロジェクトをデプロイするときにWeb、必要なすべてのDLLをbinフォルダーに含める必要があることは明らかです。プロジェクトから特定の実装への直接の依存関係がないため、Webプロジェクトとプロジェクトの単純なビルド後スクリプトを作成することにServicesなりました。このスクリプトはRepositories、関連するすべてのDLLを(またはその他の消費プロジェクト)のbinフォルダーにコピーします。 Web)。次に、関連するDLLをプロジェクトに含め、それらをコンテンツとしてマークする必要があります。

明らかに、これは展開への依存関係を管理するための最も快適な方法ではありません。

私が知りたいのは、この問題を解決するためのより良い方法があるかどうかです。

:現時点では、CIサーバーはありません。また、近い将来、CIサーバーは計画されていません。

4

1 に答える 1

0

次の仮定がすべて当てはまる場合:

  • あなたのチームの慣習は、Web から直接サービスとリポジトリ内の実装を使用しないことです。
  • この慣習は十分に理解され、守られています
  • 展開ごとに異なる実装を参照する必要はありません

次に、簡単な方法で、Web プロジェクトでそれらのプロジェクトを参照するだけです。

そうしないと、ビルド後のイベントに行き詰まります。

于 2013-01-29T12:46:15.213 に答える