visual-studio - 无法在具有慢速(玻利维亚)互联网的 Visual Studio for Mac 和 dotnet 核心中恢复 nuget 包

标签 visual-studio nuget .net-core nuget-package-restore visual-studio-mac

我在为玻利维亚的 dotnet core 2.0 项目恢复包时遇到问题。回到荷兰的家中,我恢复包裹没有问题,但在这里它坏了。

我收到很多错误,例如:

Failed to download package 'System.Linq.4.1.0' from
'https://api.nuget.org/v3-flatcontainer/system.linq/4.1.0/system.linq.4.1.0.nupkg'.
An error occurred while sending the request
  Error: SecureChannelFailure (Unable to write data to the transport connection: Cannot access a disposed object.
  Object name: 'System.Net.Sockets.Socket'..)
  Unable to write data to the transport connection: Cannot access a disposed object.
  Object name: 'System.Net.Sockets.Socket'..
  Cannot access a disposed object.
  Object name: 'System.Net.Sockets.Socket'.
Unable to load package 'System.Linq'.

当我尝试 wget 这个文件时,我的速度在 400 KB/s 到 3 MB/s 之间。

我在想它是并行恢复包的 nuget,这会导致旅馆互联网被充分利用?我已经在不同的旅馆/咖啡馆尝试过,我遇到了同样的问题。当我远程桌面进入我在荷兰的家庭服务器并恢复同一个项目的包时,一切顺利。

我在这里有什么选择?我尝试用谷歌搜索这个问题一段时间,但我还没有找到解决方案。

谢谢!

约里克

最佳答案

我无法解决网络问题,但作为一种可能的解决方法,您可以减少 Visual Studio for Mac 下载的 NuGet 包的数量。这可以通过使用 NuGet 后备文件夹为 .NET Core 2.0 项目完成:

/usr/local/share/dotnet/sdk/NuGetFallbackFolder/

fallback 文件夹包含许多默认情况下由 .NET Core 2.0 使用的 NuGet 包。如果您安装 .NET Core SDK,则应创建此文件夹。

使用上述文件夹将阻止下载大量 NuGet 包。

您可以直接将其添加为 NuGet 包源,也可以编辑 ~/.config/NuGet/NuGet.Config 文件并添加备用文件夹,如下所示:

或者,您可以将显式后备文件夹添加到 ~/.config/NuGet/NuGet.Config 文件中:
<fallbackPackageFolders>
  <add key="DotNetCore2FallbackFolder" value="/usr/local/share/dotnet/sdk/NuGetFallbackFolder" />
</fallbackPackageFolders>

需要重新启动 Visual Studio for Mac。还要检查该文件夹是否存在。

请注意,由于另一个错误,Visual Studio for Mac 在恢复 .NET Core 项目时仍会下载一些 NuGet 包。

关于visual-studio - 无法在具有慢速(玻利维亚)互联网的 Visual Studio for Mac 和 dotnet 核心中恢复 nuget 包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46133414/

相关文章:

visual-studio - 使用 CMake 命令为 Visual Studio 设置断点

c# - 用于 Visual Studio 项目的超简单轻量级源代码控制?

c# - 基础连接已关闭。无法使用 HTTP.sys 运行 Asp.Net Core 2.1 Web API 应用程序?

c# - .NET Core - 构建项目指定 ReferencePath

c++ - 我需要向项目添加什么以包含库?

visual-studio - 在 Visual Studio 2013 中为 CUDA 7.0 启用语法高亮

visual-studio-2010 - 从解决方案中删除 nuget 包恢复

c# - 使用 ReactiveUI 时更新 Xamarin Forms 会导致 System.IO.FileNotFoundException - ReactiveUI.Winforms

build-automation - NuGet 包在指定 -Build 时忽略 -Prop 参数

asp.net-core - .NET Core CoreFX 运行时适配层用途