C# System.Net.Http与Microsoft.Net.Http的当前状态
我对C# System.Net.Http与Microsoft.Net.Http的当前状态,c#,nuget,httpclient,base-class-library,C#,Nuget,Httpclient,Base Class Library,我对HttpClient的打包感到困惑。早些时候,它是作为Microsoft.Http.NetNuGet包的一部分发布的,而System.Net.Http被认为是遗留的。现在看起来正好相反:所有平台都有一个新的System.Net.Http包,而且Microsoft.Net.Http已经有一段时间没有更新了,据微软开发团队的人说,它将被弃用 问题如下: 我们可以用(最新的)System.Net.Http替换对Microsoft.Net.HttpNuGet软件包的依赖关系吗 旧式.NET 4.0
HttpClient
的打包感到困惑。早些时候,它是作为Microsoft.Http.Net
NuGet包的一部分发布的,而System.Net.Http
被认为是遗留的。现在看起来正好相反:所有平台都有一个新的System.Net.Http
包,而且Microsoft.Net.Http
已经有一段时间没有更新了,据微软开发团队的人说,它将被弃用
问题如下:
- 我们可以用(最新的)
替换对System.Net.Http
NuGet软件包的依赖关系吗Microsoft.Net.Http
- 旧式.NET 4.0平台是否仍应使用
? 那么非Windows平台(iOS、Android)呢?新的Microsoft.NET.Http
支持它们,但我记得使用System.Net.Http
我必须另外安装Microsoft.Net.Http
和Microsoft.Bcl.Build
,以便跨平台工作Microsoft.Bcl
不依赖于它们。可以跳过Bcl包吗System.Net.Http
缺少一些Http扩展方法,如System.Net.Http
,尝试调用这些方法会导致运行时错误(缺少方法)。我们应该如何处理SupportsPreAuthenticate
System.Net.Http
的链接使用!该实现适用于Windows应用商店应用程序
也许明年这一切都会再次改变。可能的重复只是为了给出改变的可能原因:Windows平台和其他操作系统之间的网络堆栈功能略有不同。例如,我在Mono环境中使用为Windows编写的.NET应用程序时遇到问题。这一变化可能意味着最终可能实现真正的平台独立性,这可能是他们将内容移动到系统名称空间的原因。从.NET Core中查找对此Http包的引用,这可能会回答您的问题。查看从Microsoft.NET.Http nuget下载的包,HttpClient的唯一实现是针对net40、portable-net40+sl4+win8+wp71+wpa81、sl4-windowsphone71。对于剩下的平台,没有实现,所以我想选择系统一个?OMG。。难道我们不能从权威人士那里得到一个规范的答案吗(