包恢复失败ASP.NET 5

时间:2016-02-13 21:53:19

标签: asp.net nuget asp.net-core dnx dnu

我遇到了Visual Studio 2015中从NuGet 存储库恢复的问题。

当我创建一个新的ASP.NET 5项目时,与ASP.NET 5相关的依赖项似乎没有下载并添加到我的新项目中,我在每个旁边的黄色三角形标记中都得到了感叹号引用,而不是。Solution Explorer.png 嗯,显然,我无法构建解决方案,因为依赖项在 project.jason 中突出显示为红色。 当我在解决方案资源管理器中点击 还原软件包 选项时,软件包无法恢复,我得到软件包还原失败消息。在输出中,我可以看到它由于 System.Security.Cryptography.SHA256Managed..ctor()

  

System.Reflection.TargetInvocationException:调用目标抛出了异常。 ---> System.InvalidOperationException:此实现不是Windows平台FIPS验证的加密算法的一部分。      在System.Security.Cryptography.SHA256Managed..ctor()      ---内部异常堆栈跟踪结束---

Output window.png

我正在使用最新的DNX(1.0.0-rc1-update1 clr x64),事实上我已尝试使用不同的DNX,但它们都没有按预期工作。我还尝试重新安装ASP.NET 5捆绑包;修复Visual Studio 2015;以不同方式卸载和安装NuGet包管理器;试图从 AppData \ Roaming \ NuGet 中删除 NuGet.Config ,从AppData \ Local \ Microsoft \ VisualStudio手动删除文件;恢复默认设置,但上述解决方案均不适合我。 唯一的"修复"为我做了一些事情的是项目文件夹中的cmd提示 " dnu restore" 命令。它解决了我最初的依赖" Microsoft.AspNet.IISPlatformHandler" " Microsoft.AspNet.Server.Kestrel" ,我设法建立项目。我认为就是这样,但事实上,它并没有做太多事情:我仍然无法添加任何新的依赖,即使我在 project.jason 手动输入它尝试解决时,NuGet包管理器失败。

问题是:有没有人遇到类似的问题?如何强制NuGet管理器解析ASP.NET 5依赖项? 任何建议都是适当的。欢迎链接到文章,主题和评论。

1 个答案:

答案 0 :(得分:0)

您的开发计算机启用了FIPS算法策略,因此将SHA256的此实现标记为无效。 .NET确实提供了符合FIPS标准的实现:SHA256CryptoServiceProvider。

如果您不知道为什么您的机器设置为符合FIPS标准,那么您的管理员可能会帮助您。由于这可能是您所在行业的要求甚至是监管,我会尽力确保。有些方法可以禁用FIPS模式,以防您不确定是否合规。