Raz*_*aza 7 .net asp.net-mvc sql-server-data-tools azure-devops dotnet-tool
无法使用“dotnet”命令行工具构建 .Net .sqlproj。这是错误:
dotnet\sdk\3.1.300\Microsoft\VisualStudio\v11.0\SSDT\Microsoft.Data.Tools.Schema.SqlTasks.targets" was not found
Run Code Online (Sandbox Code Playgroud)
我已经安装了 SSDT 工具,但它在上述位置不可用。
注意:它是使用 Visual Studio 和 MSBuild 没有任何错误的建筑物
hol*_*irt 16
已经取得了一些进展,预览版已发布 https://github.com/microsoft/DacFx/tree/main/src/Microsoft.Build.Sql
<Sdk Name="Microsoft.Build.Sql" Version="0.1.3-preview" />
Run Code Online (Sandbox Code Playgroud)
截至 2020 年 3 月,现在可以使用MSBuild.Sdk.SqlProj包实现这一点。从技术上讲,它并不是构建文件本身,而是构建基于 DACPAC 的sqlproj
等效版本。csproj
它目前具有一些优势,例如跨平台构建,以及能够构建整个文件夹,而不是遗漏您总是忘记手动添加到 sqlproj 的一个文件。当前的缺点是由于没有dbmdl
缓存而导致构建速度较慢,并且至少对于将更改从外部数据库或 DACPAC 导入到项目源而言,IDE/工具支持较少。
如何使用“dotnet”工具构建 .sqlproj 项目?
抱歉,但据我所知,目前不支持这种情况。dotnet cli 无法使用旧框架样式项目文件构建数据库项目,这是设计使然。
至于为什么使用 Visual Studio 和 MSBuild 构建没有任何错误但使用 dotnet 失败的原因。请检查您的 SSDT 安装路径,它应该在 path 下C:\Program Files (x86)\Microsoft Visual Studio\2019\VSEditon\MSBuild\Microsoft\VisualStudio\v16.0\SSDT
。
它SSDT
作为 MSBuild(VS 构建工具)或来自 VS 的 MSBuild 的子模块安装,因此在通过 VS/MSbuild 构建时效果很好。但是dotnet cli
不知道在哪里可以找到 MSBuild 文件夹的子文件夹下的这个模块,所以它会抛出错误。
github上曾经讨论过这个,我认为支持通过Dotnet构建SQLProj的功能还没有实现。如果您对该功能感兴趣,我建议您可以在那里打开一张新票来发表您的想法。
归档时间: |
|
查看次数: |
3752 次 |
最近记录: |