我可以在发布配置文件中指定目标平台(SQL Server 2014,SQL Server 2016,Azure等)吗?我有一个数据库项目,有时我会将其部署到本地SQL Server 2016实例,而其他时间则会部署到Azure SQL数据库。我想指定2个不同的发布配置文件,并且当时可以随时更改目标平台。这可能吗?发布配置文件中的Visual Studio数据库项目目标平台
2
A
回答
1
Azure,MSSQL 2014,MSSQL 2016对Database Project有不同的限制和要求。
想象一下: 您在MSSQL 2014中使用FILESTREAM,并将在MSSQL 2016中使用。并且您的FILESTREAM在Database Project中进行了介绍。现在,您在解决方案中添加Azure支持,并且希望部署数据库。但是,Azure does not support FILESTREAM。
所以你不能在这种情况下有一个数据库项目。您需要选择最小支持的目标项目:
在这种情况下,它是Microsoft Azure SQL Databse(或V12)。当您选择最小支持的目标平台时,您可以确保所有“更高”的版本都支持它。
假设Azure是MSSQL Server功能的一些子集。并且数据库项目验证所有使用跨目标平台的功能。
如果你害怕选择Microsoft Azure SQL Databse作为目标平台,你将无法发布到MSSQL Server 2016 - 没问题,它将工作。
如果您需要使用不同的连接字符串或发布设置 - 创建不同的发布配置文件。
0
您可以使用msbuild和rebuild来生成dacpac。我们可以使用PowerShell更改项目中的目标平台以实现自动化的方式。
msbuild SlnFolders.sln /t:NotInSolutionfolder:Rebuild;NewFolder\InSolutionFolder:Clean
从那里我们可以使用发布配置文件进行dacpac部署。
相关问题
- 1. 为我的Visual Studio C++项目配置目标平台
- 2. Visual Studio 2013数据库项目 - 部署/发布 - 文件组PRIMARY
- 3. Visual Studio 2012数据库项目 - 文件路径配置
- 4. 按平台/配置更改Visual Studio 2008项目配置
- 5. 从Visual Studio发布项目时排除目标文件
- 6. 发布项目在Visual Studio
- 7. Visual C#数据库中的配置文件Sql Server项目
- 8. Visual Studio 2012发布项目与外部数据库的C#
- 9. Visual Studio中的SQL数据库项目
- 10. 为Visual Studio 2015安装程序项目选择目标平台
- 11. 如何在VS 2015发布Visual Studio数据库项目
- 12. Visual Studio 2012数据库项目发布列顺序
- 13. Visual Studio 2010数据库项目数据
- 14. 根据配置从Visual Studio部署项目中排除文件
- 15. Visual Studio Community - 禁用目标平台“iOS”
- 16. 如何在Visual Studio中发布ASP.NET MVC项目时设置数据库
- 17. VS 2010中项目的平台配置
- 18. 无法保存数据库项目:Visual Studio中的* .dbp文件
- 19. 发布数据库项目
- 20. 如何配置Visual Studio 2012数据库项目来构建部署.sql文件
- 21. 如何使用发布配置文件将项目和数据库从visual studio 2013导入到网站
- 22. Visual Studio C++项目的目标文件位置
- 23. 带有Access数据库的Visual Studio项目发布的项目数据库未找到
- 24. 使用Visual Studio项目文件进行跨平台编译
- 25. Visual Studio 2010宏从数据库项目中删除SQL文件
- 26. Visual Studio 2012'发布配置文件'到Windows Server 2008 - '目标不兼容'错误
- 27. Eclipse:我如何在配置文件中设置目标平台
- 28. VS2010项目没有x64平台目标
- 29. Visual Studio 2015中的Oracle数据库项目的MSBuild设置
- 30. Visual Studio 2010数据库项目部署
谢谢 - 我不知道为什么我没有打算尝试设置为Azure V12并发布到SQL 2016.完美工作。 – mike
@mike很乐意帮忙。我可以想象,当你第一次看到目标平台选项时,你可能会认为“它只适用于这个平台” – Backs