C# Visual Studio 2019 SSDT项目SQLCLR签名未生成签名DLL

C# Visual Studio 2019 SSDT项目SQLCLR签名未生成签名DLL,c#,sql-server,visual-studio-2019,sql-server-data-tools,sqlclr,C#,Sql Server,Visual Studio 2019,Sql Server Data Tools,Sqlclr,我使用VisualStudio2019创建了一个SSDT项目。添加了一个SQL CLR C#用户定义函数 打开项目属性页,在SQLCLR选项卡中,单击签名。。。按钮以选中“为程序集签名”,创建一个新的密钥文件。但是在构建项目之后,生成的DLL没有签名。DLL没有数字签名 如何使用Visual Studio对SQL CLR DLL进行签名?为什么说DLL没有签名?是否使用可以检查强名称的工具检查DLL(这与使用证书对程序集/DLL进行签名不同)SN.EXE是用于对程序集进行强命名的。它还可以提取一

我使用VisualStudio2019创建了一个SSDT项目。添加了一个SQL CLR C#用户定义函数

打开项目属性页,在SQLCLR选项卡中,单击签名。。。按钮以选中“为程序集签名”,创建一个新的密钥文件。但是在构建项目之后,生成的DLL没有签名。DLL没有数字签名


如何使用Visual Studio对SQL CLR DLL进行签名?

为什么说DLL没有签名?是否使用可以检查强名称的工具检查DLL(这与使用证书对程序集/DLL进行签名不同)SN.EXE是用于对程序集进行强命名的。它还可以提取一个强名称来确认它确实有一个强名称

我怀疑DLL/程序集具有强名称(即签名),但无法部署,因为Visual Studio(更具体地说,是处理SQL脚本构建和部署的SSDT)从未理解SQLCLR安全性的概念(可能是因为SSDT数据库项目只是数据库级别,而不是实例级别)。因此,不幸的是,我们只能自己处理正确的部署(“正确”意味着不为数据库启用可信的

我有关于解决此问题的两种不同方法的说明,它们都使用SQL Server 2017和更新版本(旧版本没有荒谬且适得其反的“CLR strict security”服务器配置选项),并且都是自动的

有关更多详细信息和解释,请参见我对以下问题的回答(同样在S.O.上):


为什么说DLL没有签名?您是否使用可以检查强名称的工具检查DLL(这与使用证书对程序集/DLL签名不同)?SN.EXE是用于对程序集进行强名称命名的。它还可以提取强名称以确认它确实具有强名称

我怀疑DLL/程序集具有强名称(即签名),但无法部署,因为Visual Studio(更具体地说,是处理SQL脚本构建和部署的SSDT)从未理解SQLCLR安全性的概念(可能是因为SSDT数据库项目只是数据库级别,而不是实例级别)。因此,不幸的是,我们只能自己处理正确的部署(“正确”意味着不为数据库启用可信的

我有关于解决此问题的两种不同方法的说明,它们都使用SQL Server 2017和更新版本(旧版本没有荒谬且适得其反的“CLR strict security”服务器配置选项),并且都是自动的

有关更多详细信息和解释,请参见我对以下问题的回答(同样在S.O.上):