2017-07-27 12 views
0

Visual Studio 2015を使用していて、SQLServerプロジェクトを持っています。プロジェクトをビルドするたびに自動的にSQL Serverに公開されます。 TFSでは、 更新ビルド定義 - >プロセス - > MSBuild引数 - >/t:ビルド/ t:パブリッシュ/ p:SqlPublishProfilePath = filePath.publish.xml ローカルPCでは、次のコマンドを使用してプロジェクトをビルドするにはどうすればよいですか?ローカルのビルド時にプロジェクトのビルド定義を更新するにはどうしたらいいですか?マシンコマンドラインを使用せずに自動的に発行されますVS2015の各ビルド後に自動的にSQLサーバープロジェクトを公開

答えて

0

ローカルマシンでビルドすると、ビルドされたオートマット巧みにコマンドラインを使用しないでください

これを達成するには、プロジェクトをアンロードし、プロジェクトファイルProjectName.sqlprojを編集します。そして、プロジェクトの最後に、ちょうど終了タグ</Project>、スクリプト以下の場所の前に:あなたは完全なリストは

、$(MSBuildProjectName)と$(MSBuildProjectDirectory)のように MSBuild Reserved and Well-Known Propertiesの一部を使用することができます

<Target Name="DeployDB" AfterTargets="build"> 
    <Message Importance="high" Text="************** Star Deploying DB **************"/> 
    <Message Importance="high" Text="Deploying Project: $(MSBuildProjectDirectory)$(MSBuildProjectName).sqlproj" /> 
    <Message Importance="high" Text="Deployment Profile: $(MSBuildProjectDirectory)PublishProfiles$(MSBuildProjectName).publish.xml" /> 

    <MSBuild Projects="$(MSBuildProjectDirectory)$(MSBuildProjectName).sqlproj” Properties=”SqlPublishProfilePath=$(MSBuildProjectDirectory)PublishProfiles$(MSBuildProjectName).publish.xml" Targets="sqlPublish" /> 
</Target> 

ところで、自動パブリッシュでは処理が遅くなるため、すべてのビルドでパブリッシュする必要はありません。この状態では、このターゲットにConditionを追加して、各ビルド後にSQLサーバープロジェクトを自動的に公開する必要があるかどうかを選択できます(LocalAutoDeployの構成を追加することを忘れないでください)。

<Target Name="DeployDB" AfterTargets="build" Condition="'$(Configuration)' == 'LocalAutoDeploy'"> 
関連する問題