首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在linux容器中构建需要SSDT的.sqlproj?

如何在linux容器中构建需要SSDT的.sqlproj?
EN

Stack Overflow用户
提问于 2020-08-12 20:24:21
回答 1查看 2.5K关注 0票数 9

我想在linux容器中构建一个.sqlproj。问题是,构建.sqlproj依赖于SSDT和,到目前为止,我还没有找到可以作为独立安装在linux上的SSDT。

错误我看到在我的容器中运行'dotnet‘:

代码语言:javascript
复制
error MSB4019: The imported project "/usr/share/dotnet/sdk/2.2.402/Microsoft/VisualStudio/v11.0/SSDT/Microsoft.Data.Tools.Schema.SqlTasks.targets" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk.

在搜索.sqlproj文件时,我看到我们正在尝试导入一个Schema.SqlTasks.targets文件,我假设SSDT创建了这个文件:

代码语言:javascript
复制
<Import Condition="'$(SQLDBExtensionsRefPath)' == ''" Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v$(VisualStudioVersion)\SSDT\Microsoft.Data.Tools.Schema.SqlTasks.targets" />

我看到了测试'dotnet‘的相同错误

有一个Windows独立选项:

https://learn.microsoft.com/en-us/sql/ssdt/download-sql-server-data-tools-ssdt?redirectedfrom=MSDN&view=sql-server-ver15

https://www.nuget.org/packages/Microsoft.Data.Tools.Msbuild/10.0.61804.210

有人找到在linux容器中提供SSDT的方法了吗?

目标状态:生成生成dacpacs的步骤将发生在容器中。

当前状态:目前在我的机器上使用Visual作为构建机器,然后将dacpacs复制到容器中,然后sqlpackage.exe可以在容器中发布模式。

为什么是Linux?这个被坞化的DB将支持在linux容器中运行的一堆服务,所以windows容器并不理想。

EN

回答 1

Stack Overflow用户

发布于 2020-08-27 19:17:19

好的,在ErikEJ和社区其他成员的帮助下,在Brett在评论中给你的GitHub链接上,我终于想出了如何做到这一点。

接下来的步骤非常简单。

"database.build"

  • remove

  • 添加Server项目

  • 添加一个.NET标准类库项目,并将其称为类似于类库项目的所有代码,并修改csproj文件,使其读起来类似于下面的

configurations.

  • 更改解决方案中的属性,以避免为所有

  • 构建sql server项目。

完成此操作后,您将发现仍然可以访问visual studio中的SQL数据库项目,并获得所有语法突出显示和intellisense,但是您的CI将通过链接类库构建SQL代码,并在其输出文件夹中生成一个dacpac,可以随时部署。

右键单击该项目将允许您在Visual中构建该项目,右键单击并选择“发布”将允许您指定数据库参数并将其发布到正在使用的DB服务器。如果数据库中已有需要引用的其他对象,则可以使用从数据库中创建一个仅为dacpac的对象,然后可以将该对象添加到项目中并与其源签入,这样就不需要重新创建可能已经拥有的每个对象。

我写了一篇博文详细解释了这一切:https://shawtyds.wordpress.com/2020/08/26/using-a-full-framework-sql-server-project-in-a-net-core-project-build/

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63384241

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档