我刚刚将我的项目从 2010 年的 Visual Studio 升级到 2013 年,以支持我的 WebApi 中的跨源资源共享 (CORS)。 现在,当我从 NuGet 安装 Microsoft.AspNet.WebApi.Cors 包时,出现以下错误。
我正在使用 Visual Studio 2013、Asp.Net MVC 5
PM> Install-Package Microsoft.AspNet.WebApi.Cors
Attempting to resolve dependency 'Microsoft.AspNet.WebApi.Core (≥ 5.2.3 && < 5.3.0)'.
Attempting to resolve dependency 'Microsoft.AspNet.WebApi.Client (≥ 5.2.3)'.
Install-Package : An item with the same key has already been added.
At line:1 char:1
+ Install-Package Microsoft.AspNet.WebApi.Cors
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [Install-Package], ArgumentException
+ FullyQualifiedErrorId : NuGetCmdletUnhandledException,NuGet.PowerShell.Commands.InstallPackageCommand
我在另一个 NuGet 库中遇到了完全相同的问题。
请尝试以下步骤:
1。更新
证明您安装的 NuGet 版本是否是最新版本
2。清除缓存
使用 NuGet 命令提示符并清除缓存:
您可以使用此命令列出本地缓存:
nuget locals all -list
您可以使用此命令清除所有缓存:
nuget locals all -clear
3.检查缓存
NuGet Cache 只是计算机上的一个文件夹,您可以手动删除 %LOCALAPPDATA%\NuGet\Cache 下的剩余文件。
或者只是在管理员CMD中运行:
del %LOCALAPPDATA%\NuGet\Cache\*.nupkg /q
该消息表明该软件包已安装。 尝试卸载后再重新安装:
卸载包 Microsoft.AspNet.WebApi.Cors
如果这可以帮助其他人,我尝试按照 Steffen Mangold 的步骤进行操作,但这并不完全有效。
如果您遇到如下装配错误:
System.Web.Http, Version=5.0.0.0
执行此命令后
Install-Package Microsoft.AspNet.WebApi.Cors
尝试一下:
1 - 在管理员 CMD 中运行此命令
del %LOCALAPPDATA%\NuGet\Cache\*.nupkg /q
2 - 在包管理器控制台中运行它
Install-Package Microsoft.AspNet.WebApi
这将安装缺少的程序集并修复错误。
检查包来源。
转到工具,单击 Nuget 包管理器,然后单击包管理器设置。
然后转到 Nuget 包管理器部分下的包源子部分。
在我的例子中,源最初指向我本地计算机上的一个文件夹。
因此,只需添加另一个包含以下详细信息的包源即可。
名称:nuget.org
来源:https://api.nuget.org/v3/index.json
我也在这上面浪费了很多时间,因为我在安装这个包时遇到了完全相同的问题,但确信这会起作用
简单的是,我已经在 Visual Studio 22 上安装了 Microsoft.AspNet.WebApi.Cors version5.3.0* for .NET Framework 4.8 版本,只是这样做
工具 > NuGet 包管理器 > 包管理器设置 > Nuget 包管理器 > 常规(清除所有 NuGet 存储)
第二重要的是需要的是走路径
工具 > NuGet 包管理器 > 包管理器设置 > Nuget 包管理器 > 包源映射(然后在这里您将列出 包,然后单击“删除全部”按钮并单击“确定”)
然后通过 nuget 包管理器安装该包,效果最好