如果您在VS 2015中将SSDT数据库项目设置为启动项目,则在您按F5时执行构建和部署
========== Build: 1 succeeded or up-to-date, 0 failed, 0 skipped ==========
========== Deploy: 1 succeeded, 0 failed, 0 skipped ==========
这与“发布...”命令不同,因为它不会引导您完成发布对话框。它只是自动部署到localdb实例(通过项目的Debug配置指向。
我经常需要将数据库部署到localdb,以便我可以针对它运行代码生成工具,而不是运行整个解决方案(有其他应用程序,即我不想通过F5运行)。
所以我想要做的是确定是否有一个项目级别的建议,我可以添加到我的工具栏中,除了F5的Start Debug命令之外,这个自动无对话框部署到localdb。我正在查看“添加命令”对话框(右键单击工具栏 - >自定义),还可以通过键盘自定义选项查看SSDT。*命令。
有没有人知道是否只有一个数据库项目Build + Deploy或Deploy的命令,它会自动执行吗? (同样,“发布...”命令不是我正在寻找的,因为它不会像上面那样自动部署)
答案 0 :(得分:4)
我用不同的方式来做这件事,我摇摆的两种方法是:
使用powershell脚本调用sqlpackage.exe来部署dacpac。正常构建项目(ctrl + shift + b)然后alt选项卡到powershell并运行最后一个命令(部署脚本)
使用StudioShell(https://studioshell.codeplex.com/)创建一个visual studio命令来执行构建然后部署,然后可以映射
(2)更接近你想要的但我个人更喜欢(1),因为它更简单。使用(1)的好处是:
我看到类似这样的问题很多,所以我想我会正确地写下我的想法:https://the.agilesql.club/blog/Ed-Elliott/Visual-Studio-SSDT-Publish-My-Personal-Best-Practices
无论你做什么(这个或其他什么)跟进你的经历,我(至少!)会发现它很有趣!
编
答案 1 :(得分:1)
我找到了两种选择:
右键单击解决方案,选择“启动项目”,“多个启动项目”,然后使数据库项目成为其中之一。
右键单击解决方案,选择“项目依赖项”,然后使数据库项目成为将要构建的其他项目之一的依赖项。