在VS2019中使用Nuget的方式添加了最新的MySQL包 MySql.Data 8.0.19 ,默认添加了个Ubiety.Dns.Core,不知道有什么用,但是启动程序后就报错。
“/”应用程序中的服务器错误。
未能加载文件或程序集“Ubiety.Dns.Core”或它的某一个依赖项。未能验证强名称签名。此程序集可能已被篡改,或者已被延迟签名,但没有用正确的私钥进行完全签名。 (异常来自 HRESULT:0x80131045)
原因好像是因为 MySql.Data 8.0.19 中自带的Ubiety.Dns.Core.dll竟然是没有签名的版本……
于是单独找到Ubiety.Dns.Core的Nuget包进行单独下载,但是报错:
无法安装程序包“Ubiety.Dns.Core 2.5.0”。你正在尝试将此程序包安装到目标为“.NETFramework,Version=v4.6”的项目中,但该程序包不包含任何与该框架兼容的程序集引用或内容文件。有关详细信息,请联系程序包作者。
竟然Nuget安装不上……我也是醉了
最后在https://www.nuget.org/packages/Ubiety.Dns.Core/2.5.0
网址中,把这个Nuget包单独下载下来。然后把这个文件 ubiety.dns.core.2.5.0.nuget的扩展名修改为.zip。
用解压软件解压,最后里面有个文件夹 lib\netstandard2.0\,里面正是有我们需要的Ubiety.Dns.Core.dll,然后把这个文件拷贝到
项目目录\packages\MySql.Data.8.0.19\lib\
在这个里面有四个文件夹
里面都有这个Ubiety.Dns.Core.dll文件,丢进去都覆盖掉文件(记得备份)。
覆盖好后,回到VS2019中,清理项目,重新生成后,再次运行,问题解决!
————————————————
原文链接:https://blog.csdn.net/wangmy1988/java/article/details/104670930