Met*_*per 7 .net c# httpclient nuget
.NET Framework 4.6.2似乎内置了System.Net.Http程序集/命名空间.还有一个我可以安装的同名Nuget包.
作为一般原则,Nuget包可以替换(例如更新)包含在已安装框架中的程序集吗?
具体来说,我应该使用Nuget版本还是System.Net.Http的框架版本?
可能不会,尽可能使用框架内置版本,如下所示:
<Reference Include="System.Net.Http" />
Run Code Online (Sandbox Code Playgroud)
如果您依赖的其他东西(例如:另一个 NuGet 包)需要 NuGet 版本,那么它将自动拉入,并且上述参考将使用可用的版本。
正如.NET 团队所说:
在大多数情况下,我们不建议人们再使用单独的 System.Net.Http NuGet 包。
引入NuGetSystem.Net.Http包是为了向框架内置版本提供快速通道/OOB 更新,特别是性能改进。虽然这些改进通常是在新的 .NET Framework 版本中进行的,但这里的想法是开发人员可以使用 NuGet 包来获得更新的好处,而无需重新定位到更新的框架。
事实证明,由于各种原因,这是一项极其复杂的任务,特别是因为它System.Net.Http被 .NET Framework 本身的其他部分使用。这在集成到下游应用程序和实际生产工作负载时引起了问题。展望未来,.NET 团队决定不再发布任何此类 OOB 包,尽管他们仍然支持和更新现有的包。
进一步阅读:
一般来说,您可以将框架库替换为 NuGet 中的框架库。如果您有特定的理由这样做,我建议您这样做。例如,如果您需要错误修复、新 API 或利用性能改进。
具体来说,对于 System.Net.Http,这取决于您的场景。如果您每分钟进行 1000 个 http 调用,请使用 NuGet 中的最新调用。如果您每小时拨打 2 次电话并且没有遇到任何问题,请坚持使用框架版本。在这两个数字之间,这取决于。
| 归档时间: |
|
| 查看次数: |
540 次 |
| 最近记录: |