我們如何更新項目的構建定義,以便在我的本地機器上構建它時,它會自動發佈沒有使用命令行
要做到這一點,請卸載您的項目,編輯項目文件ProjectName.sqlproj。然後,在項目的最後,略低於腳本結束標記</Project>
,地點前:
<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>
你可以使用一些MSBuild Reserved and Well-Known Properties像$(MSBuildProjectName)和$(MSBuildProjectDirectory),用於完整列表
順便說一句,自動發佈會減慢你的速度,你可能不需要爲每個版本發佈。在這種情況下,您可以爲此目標添加一個Condition
,以便您選擇是否需要在每次構建後自動發佈sql server項目(不要忘記添加配置爲LocalAutoDeploy
)。
<Target Name="DeployDB" AfterTargets="build" Condition="'$(Configuration)' == 'LocalAutoDeploy'">