如何恢复 Deploy 选项:( 仅限 Visual Studio 2010/2012 -- Visual Studio 2013 不再支持此功能)
部署选项仍然存在,但由于某种原因,它在菜单中不可用。(被诅咒的 Visual Studio 团队!)我通过将部署选项添加到工具栏之一来解决此问题,如下所示:
- 单击工具栏右侧的箭头。
- 单击“添加或删除按钮”,然后单击自定义。
- 在自定义对话框中单击添加命令。
- 选择“构建”类别,然后选择“部署选择”命令。
- 保存您的选择后,“部署 [项目名称]”选项将出现在工具栏上。您需要在解决方案资源管理器中选择您的项目才能启用该按钮。
请注意,部署设置与发布设置不同。部署设置在“调试”选项卡上的项目属性中进行配置。
要回答有关“发布”选项的问题:
1)如何默认使用特定的发布文件,避免烦人的提示
我不认为有办法解决这个问题。
2)如何发布整个数据库,而不仅仅是更改
在文本编辑器中打开 .publish.xml 文件并添加<AlwaysCreateNewDatabase>true</AlwaysCreateNewDatabase>
.
例如:
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<TargetDatabaseName>MyDatabase</TargetDatabaseName>
<DeployScriptFileName>MyDatabaseProject.sql</DeployScriptFileName>
<TargetConnectionString>Data Source=localhost\SQL2012;Integrated Security=True;Pooling=False</TargetConnectionString>
<PublishDependentProjects>False</PublishDependentProjects>
<ProfileVersionNumber>1</ProfileVersionNumber>
<AlwaysCreateNewDatabase>true</AlwaysCreateNewDatabase>
</PropertyGroup>
</Project>
3) 自动化构建的命令行语法
首先像往常一样使用 msbuild 构建项目,以便在 bin 中创建 .dacpac 文件。
然后使用sqlpackage.exe
您的 .publish.xml 文件进行发布:
C:\Program Files\Microsoft Visual Studio 10.0\Microsoft SQL Server Data Tools\sqlpackage.exe /Action:Publish /SourceFile:C:\[path to my project]\bin\Debug\MyDatabaseProject.dacpac /Profile:C:\[path to my project]\MyDatabaseProject.publish.xml
请注意,sqlpackage.exe 的路径可能不同。