私はプロジェクトに取り組んでおり、ソリューションには 40 以上のプロジェクトがあります。Lite と Release の 2 つのビルド構成があります。Lite は AG プロジェクトをビルドし、Release は A ~ M プロジェクトをビルドします。Lite をビルドし、リリース用に Lite の dll を使用するリリース ターゲットを作成することは可能ですか?
1 に答える
私がこれを処理する方法はです。
すべてが相対フォルダーから依存関係を参照するようにします。
。\MySolution01.sln
。\MyCSProj01\ MyCSProj01.csproj
。\MyCSProj02\ MyCSProj02.csproj
。\MyCSProjN\ MyCSProjN.csproj
。\ThirdPartyReferences\
。\ThirdPartyReferences\ MyCoolDll.dll
。\ThirdPartyReferences\ SomePDFLibrary.dll
とcsprojで
<Reference Include="SomePDFLibrary">
<HintPath>..\ThirdPartyReferences\SomePDFLibrary.dll</HintPath>
</Reference>
2.2。
次のようなmsbuildタスクを作成します
A.「Lite」のコードをプルダウンします。B.「Lite」をビルドします。C.「リリース」のコードをプルダウンします。D.「Lite」から「Release」用のThirdPartyReferencesフォルダーにファイルをコピーします。E.「リリース」を作成します。
別のアイデア。
「Lite」がビルドされたら、それらのdllをバイナリリポジトリに「公開」します。「アイビー」(apache)はマイクロソフト以外のものです。(コマンドラインバージョンのivyを使用できますが、ほとんどのMicrosoft開発者はここにアクセスしません)Nuget(ローカルリポジトリを使用)は、〜binaryリポジトリの「マイクロソフトフレーバー」です。
http://gregorsuttie.com/2011/01/03/using-a-nuget-local-repository/
次に、「リリース」がビルドされると、バイナリリポジトリからバイナリを「プルダウン」します。