- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在集成一个从几乎端点返回此模型的 API
{
meta: { ... },
data: { ... }
}
但对于某些调用,数据是同类对象的数组
{
meta: { ... },
data: [
{ ... },
{ ... }
]
}
我想使用 HttpContent.ReadAsAsync<ResponseObj>
将这两个转换为我的 C# 类,我已经像这样设置了 Response 类:
public class ResponseObj {
public MetaObj Meta {get;set;}
public DataObj[] Data {get;set;}
}
有点出乎意料,我在尝试解析第一个响应时遇到异常。是否可以告诉 JSON 解析器处理单个数据对象并返回单个元素数组?
我能看到的唯一其他解决方案是创建单独的 ResponseObj
两种不同响应类型的定义。
最佳答案
将您的 ResponseObj 创建为通用类。
public class ResponseObj<T> {
public MetaObj Meta {get;set;}
public T Data {get;set;}
}
您可以使用 HttpContent.ReadAsAsync<ResponseObj<DataObj>>
反序列化 json或 HttpContent.ReadAsAsync<ResponseObj<DataObj[]>>
关于c# - 使用 HttpContent.ReadAsAsync<T> 解析带有一个对象或数组的响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67281084/
我有一个通过 HttpSelfHostServer (ASP.Net WebApi Beta) 运行的小型 REST 服务,但在反序列化一些发布到服务器的数据时遇到了一些问题。方法签名如下: publ
在同一个类中对泛型方法进行方法调用时,出现以下异常: System.MissingMethodException:找不到方法:'System.Threading.Tasks.Task`1 System
使用 Web API 2.2,假设我想从 HttpContent 中读取两次,每次都是不同的类型。 await httpContent.LoadIntoBufferAsync(); //necessa
我在网络上看到大量使用新 HttpClient 的示例对象(作为新 Web API 的一部分)应该有 HttpContent.ReadAsAsync方法。然而,MSDN没有提到这个方法,Intelli
我在 MVC 4 应用程序中使用 ASP.Net Web API 来执行各种操作。问题是我的 API 方法返回动态类型,并且在 View 端我使用方法 ReadAsAsync().Result。现在我
我有课 public class C { public int Id { get; set; } public SqlXml Range { get; set; } // System
我正在使用 Microsoft.AspNet.WebApi.Client在我的 ASP.MVC 5 项目中使用休息服务。我正在关注 this使用 HttpClient 的教程。代码未编译,因为 Rea
这适用于所有属性: string resultAsString = await httpResponseMessage.Content.ReadAsStringAsync(); return awai
我正在尝试通过 tutorial explaining how to access a WebAPI service在 VS2013 (.net 4.5.1) 中,我得到以下行的编译错误: Produ
我正在集成一个从几乎端点返回此模型的 API { meta: { ... }, data: { ... } } 但对于某些调用,数据是同类对象的数组 { meta: { ... },
我有以下代码尝试从 Web API 服务获取 Appication 对象。我得到以下异常: InnerException = {"Could not create an instance of typ
是否可以创建一个实现 HttpContent.ReadAsAsync 的 stub ?在Microsoft Fakes的帮助下(在 Visual Studio 2012 中)?如果是,怎么办? 最佳答
假设我有如下从客户端发送的 json 负载 {"Number": 2, "number": 4} 在服务器端,我有这个模型类。 public class Arg { public int Nu
我正在开发一个 winform 应用程序,并且正在对 GoogleMaps API 进行 API 调用。但由于某种原因,我无法得到回应。或者实际上,我确实收到了回复,但无法对其执行任何操作。 我的代码
应该做什么HttpContentExtensions.ReadAsAsync和 HttpContent.ReadAsStringAsync用来做什么? 他们似乎在做类似的事情,但工作方式却很奇怪。下面
因此,我正在启动一个新的 .Net 4.0 项目,并将使用公共(public) API 进行一些工作。我计划使用 Microsoft HttpClient 类,所以我安装了最新稳定版本的 Micros
我正在使用 Microsoft ASP.NET Web API 客户端库(版本 4.0.30506,因为我必须在 .NET Framework 4.0 上运行)以与 .NET Web API 交互。我
我正在尝试通过 Web API 客户端库使用 Web 服务。我的问题是,当提交函数使用 POST 方法时,ReadAsAsync 似乎不想完全反序列化返回的对象。 如果我得到字符串形式的响应并手动解除
我第一次涉足 ASP.NET Web API,遇到了一个让我非常沮丧的问题。 我正在调用的 RESTful 服务返回如下数据: foo
我正在调用 WebAPI,它通过 JSON 从数据库返回一些内容。内容在 JSON 中可见(使用 Fiddler 查看),但是当我尝试将响应数据放回类中时,类中的所有值均为 null。 这曾经有效,但
我是一名优秀的程序员,十分优秀!