Microsoft.AspNet.WebApi.Client在.NET Core中是否受支持?

18

目前我正在尝试使用.NET Core和MediaTypeFormatters通过HttpClient进行JSON格式化。特别是函数“ReadAsAsync(...,MediaTypeFormatter,...)”(https://msdn.microsoft.com/de-de/library/system.net.http.httpcontentextensions.readasasync(v=vs.118).aspx),它在.NET Framework的HttpContent类中可用,将非常有帮助。据我所知,它可以在NuGet包Microsoft.AspNet.WebApi.Client中找到,但我无法下载它,因为它不支持.NET Core。

尽管我已经阅读了以下内容:

我知道可以使用Newtonsoft等工具来进行格式化。

但是,是否有人知道这个包将再次在.NET Core中提供?我真的找不到任何信息...


3个回答

9

更新:

Microsoft.AspNet.WebApi.Client 版本 5.2.4 已于2018年2月12日发布。

感谢 @whitney-kew @jaquez


该包目前与dotnetcore不完全兼容。 但是有一个解决方法。 您需要像下面这样编辑project.csproj:
<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
   <TargetFramework>netstandard1.4</TargetFramework>
   <PackageTargetFallback>portable-net451+win8</PackageTargetFallback>
  </PropertyGroup>
  <ItemGroup>
    <PackageReference Include="Microsoft.AspNet.WebApi.Client" Version="5.2.3" />
    <PackageReference Include="System.Runtime.Serialization.Xml" Version="4.3.0-*" />
    <PackageReference Include="System.Xml.XmlSerializer" Version="4.3.0-*" />
  </ItemGroup> 
</Project>

请参考此 GitHub 问题以获取详细信息:

https://github.com/aspnet/Home/issues/1558

我认为新的Microsoft.AspNet.WebApi.Client版本(5.2.4)应该能解决这个问题,但它还没有发布,可能要到2017年底。


2
Microsoft.AspNet.WebApi.Client 5.2.4版本终于在2018年02月12日发布。 - Jaquez

9

1
除了其他答案之外,还有一个System.Net.Http.Json包,它使用新的Json序列化器而不是Newtonsoft的。
使用方法与使用Microsoft.AspNet.WebApi.Client略有不同。
httpClient.GetFromJsonAsync<Type>(uri);

还有许多其他的重载。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接