Asp.net core 还原Nuget包时出错

Asp.net core 还原Nuget包时出错,asp.net-core,asp.net-web-api,nuget,Asp.net Core,Asp.net Web Api,Nuget,当我尝试构建我的解决方案(使用Visual Studio 2019的AspnetCore 2.0)时,出现以下错误: 还原NuGet程序包时出错:该程序包 “MySql.Data.7.0.7-m61”包含一个对用户不安全的条目 提取 同一个项目可以在其他机器上运行。我已经尝试过清理解决方案、恢复软件包,但没有任何效果。我能做些什么来解决这个问题?你听说过“拉链”吗?这是一个zip存档漏洞,其中zip文件包含一个路径为。\thing的文件,因此当您将其解压缩到c:\where时,它会写入c:\th

当我尝试构建我的解决方案(使用Visual Studio 2019的AspnetCore 2.0)时,出现以下错误:

还原NuGet程序包时出错:该程序包 “MySql.Data.7.0.7-m61”包含一个对用户不安全的条目 提取

同一个项目可以在其他机器上运行。我已经尝试过清理解决方案、恢复软件包,但没有任何效果。我能做些什么来解决这个问题?

你听说过“拉链”吗?这是一个zip存档漏洞,其中zip文件包含一个路径为
。\thing
的文件,因此当您将其解压缩到
c:\where
时,它会写入
c:\thing
,这显然超出了预期的
c:\where
目标
MySql.Data.7.0.7-m61包含此漏洞,尽管它不是恶意的。但这仍然不是一件好事,这就是为什么新的NuGet客户端禁止提取它


由于此软件包不是恶意软件包,因此软件包作者发布了不存在此问题的较新版本,因此您可以升级到该软件包的较新版本。此项目在其他机器上运行的唯一可能原因是,如果您运行的是旧版本的Visual Studio和/或.NET Core SDK,因为NuGet不久前添加了此问题的缓解措施,这表明您一直没有在另一台计算机上进行更新。

我使用PackageReference解决了该错误,如下所示:

在列表中的项目“myProjectName.csproj”上添加上述行


如果该行不能解决问题,请将第行的Version值更改为Version=“7.0.7”

,但此版本是最新版本。我可以对软件包进行降级,但我认为这不是最好的解决方案。现在,我不知道为什么,但我现在尝试安装这个软件包(8.0.18),但得到了相同的错误。(包'MySql.Data.7.0.7-m61'包含一个对提取不安全的条目。)