1

私はMVCアプリケーションを持っており、WebAPIサービスは単一のソリューションであり、どちらのプロジェクトでも、File Systemを使用して配置するためのpublilshプロファイルを作成しました。それは実際には非常に美しく動作します。しかし、各プロジェクトを最初にステージングに、次にプロダクションに手動で展開する必要があります。最小限に抑えるのは面倒です。コマンドラインからのMSBuild、ただしapp_offline.htmはありませんか?

コマンドラインからMSBuildを呼び出す方法を知り、公開プロファイルを指定しました。これにより、MSBuildをソリューションレベルで呼び出すことができ、MVCアプリケーションとサービスの両方が展開されます。すばらしいです。しかし...

VS2015(プロジェクトを右クリックし、[パブリッシュ]を選択し、適切なプロファイルを選択してそれを外してください)で公開機能を呼び出すと、app_offline.htmがコピーされ、プロジェクトと展開。しかし、私がコマンドラインでこれを行うと、app_offline.htmは決して表示されません。展開する前に、ファイルを最初に削除しません。

は、私は率直に言って、かなり単純である私のMSBuildコマンドラインで行方不明ですいくつかのスイッチやパラメータがあります:

msbuild .\mySolution.sln /p:DeployOnBuild=true /p:PublishProfile=Staging 

私はWeb配置が好ましい方法である知っているが、我々はここで少し後方です私たちは真に最新かつ最高のものを採用することは決してありません。私は現在のパブリッシュプロファイルをファイルシステムを使ってどのように使うことができるかを理解する必要があります。

答えて

0

VSとMSBuildのコマンドライン経由では、基本的に同じことを行います。しかし、私はあなたが走っているものと同様の問題を経験しています。これに対処する1つの方法は、ファイルが適切にコピーされることを確認するターゲットを作成することです。 This MSDN Questionでは、いくつかの解決策について詳しく説明します。いくつかの例では、問題のプロジェクトにチェックインされたpowershellスクリプトまたはバッチファイルがあり、ソリューションがデプロイされるとターゲットマシン上で実行されます。

関連する問題