私は2つのソリューションを持っています(Master Framework MとSlave Project Sと言うことができます)。 MはS種類の多くのソリューションで使用されています。私のビルドプロセスで 私はMからすべてのDLLを構築し、私はあなたが知っているかもしれないと私は簡単S.VS 2010別のソリューションに応じて解決
の問題を使用して、すぐにMを変更することができ速いサイクルをご希望の作業中S. でそれらを使用すべてcsprojファイル内のライブラリやプロジェクトを参照する方法に関連しています。
あなたはあなたがこのようにそれを行う必要があります(でも、別の溶液から)プロジェクトをリンクしたい場合は、この
<Reference>
<HintPath>..\lib\$(Platform)\$(Configuration)\M.Example.dll</HintPath>
</Reference>
ような何かをしなければならないDLLをリンクしたい場合
<ProjectReference Include="..\path to project in other solution\M.Example.csproj">
<Project>{2009D1C4-E18F-6CF8-8AA4-B53A1B2F1009}</Project>
<Name>M.Example</Name>
</ProjectReference>
これはC#プロジェクト(csproj)ファイルに直接書き込まれています!したがって、同じファイル内で異なる目的でプロジェクトやDLLを使用することはできません。
2つのcsprojファイルをビルドプロセスのすべてのDLLを参照するファイルと、開発のためのプロジェクト& CIの目的。
1)2つの別個の解決策を残して、Mで作業し、DLLのみを参照し、カスタム入力プロジェクト(開発時のみ)を使用してSでビルドして作業します。 SのlibディレクトリにあるMは、Sルートの外を見たり、他のプロジェクトを参照することなく、それらを使用することができます。
2)建物は唯一の公式ビルドプロセスで定義されている。この
<Reference Condition='$(BUILDING)!=""'>
<HintPath>..\lib\$(Platform)\$(Configuration)\M.Example.dll</HintPath>
</Reference>
<ProjectReference Condition='$(BUILDING)==""' Include="..\path to project in other solution\M.Example.csproj">
<Project>{2009D1C4-E18F-6CF8-8AA4-B53A1B2F1009}</Project>
<Name>M.Example</Name>
</ProjectReference>
などの条件を使用してください。
私はあなたがデザインを考える必要があります
Mソリューションのプロジェクトの数はいくつですか? – Reniuz
ソリューションがソリューションに依存することは、正確にはどういう意味ですか?通常、ソリューションSのいくつかのプロジェクトは、ソリューションMのいくつかのプロジェクトに依存しています。もしそうなら、それらのプロジェクトを単に*両方のソリューションに追加することができます。 – jalf