.net Visual Studio SSDT数据库项目(.sqlproj)生成-使用CLI生成.dacpac而不使用MSBUILD(MSBUILD.exe)
看起来dotnet CLI不支持数据库项目。根据以下内容: 在我的情况下,dotnet构建失败,出现以下错误: C:…*.Database.sqlproj59,3: 错误MSB4019:导入的项目为C:\Program Files\dotnet\sdk\3.1.301\Microsoft\VisualStudio\v11.0\SSDT\Microsoft.Data.Tools.Schema.SqlTasks.targets 找不到。确认导入声明中的表达式 C:\程序 Files\dotnet\sdk\3.1.301\Microsoft\VisualStudio\v11.0\SSDT\Microsoft.Data.Tools.Schema.SqlTasks.targets 正确,并且该文件存在于磁盘上 不用说,该解决方案通过Visual Studio中的内置编译并生成.dacpac。我需要这个从命令行工作。除了msbuild.exe,我还有其他解决方案吗?也许有一些可爱的裸体包能帮上忙 除了msbuild.exe,我还有其他解决方案吗?也许是一些可爱的 有什么可以帮到你的吗 实际上,除了msbuild.exe之外,没有其他生成工具可以生成数据库项目。因此,您必须使用msbuild.exe 自VS2017以来,msbuild.exe有一个不依赖于VS IDE的单独版本,称为VS的Build Tool,它是与VS工作负载环境集成的生成命令行 因此,我认为您希望在构建服务器上使用轻量级构建工具,而不是庞大的VS IDE,如果是这样,您应该下载它 暗示 1在所有下载->Visual Studio 2019工具->Visual Studio 2019构建工具下下载 2记住选择相应的工作负载数据存储和处理构建工具.net Visual Studio SSDT数据库项目(.sqlproj)生成-使用CLI生成.dacpac而不使用MSBUILD(MSBUILD.exe),.net,visual-studio,msbuild,dacpac,dotnet-cli,.net,Visual Studio,Msbuild,Dacpac,Dotnet Cli,看起来dotnet CLI不支持数据库项目。根据以下内容: 在我的情况下,dotnet构建失败,出现以下错误: C:…*.Database.sqlproj59,3: 错误MSB4019:导入的项目为C:\Program Files\dotnet\sdk\3.1.301\Microsoft\VisualStudio\v11.0\SSDT\Microsoft.Data.Tools.Schema.SqlTasks.targets 找不到。确认导入声明中的表达式 C:\程序 Files\dotnet\s
完成后,您可以使用它构建数据库项目。我已设法使其按本文所述工作: 它需要一种特殊类型的.NET标准Visual Studio项目-MSBuild.Sdk.SqlProj nuget download,它在编译时从数据库项目复制脚本 以下是我的build_database.cmd代码:
SET db_project=Database.Build
dotnet tool install -g dotnet-script
cd %db_project%
dotnet build
dotnet-script Program.csx
以及一个C脚本程序.csx,它使用Microsoft.SqlServer.DACFx nuget包创建并部署.dacpac:
#r "nuget: Microsoft.SqlServer.DACFx, 150.4769.1"
using Microsoft.SqlServer.Dac;
var dbName = "SampleDatabase";
var connectionString = $"Data Source=.;Initial Catalog={dbName};Integrated Security=True;";
var dacpacLocation = Directory.GetFiles(@".\bin", "Database.Build.dacpac",
SearchOption.AllDirectories)[0];
var dbPackage = DacPackage.Load(dacpacLocation);
var services = new DacServices(connectionString);
services.Deploy(dbPackage, dbName, true);
这种方法是完全自动化的,可以在CI或本地开发环境中使用,而且显然也是跨平台的,尽管我只在Windows上测试过。
希望这有帮助:我的方法:
安装Visual Studio生成工具2019
包括数据存储和处理构建工具工作流和.NET Framework 4.6.1目标包单个组件我认为您可以下载VS2019的构建工具。它是一个轻量级的构建工具,可以独立于VS集成各种模块。它只是一个命令工具。它是哪个工具?VS2019Build tool VS的构建工具更像是dotnet.exe的形式,更适合您在构建服务器上构建相关项目。如果您有任何问题,请随时告知我们: