【发布时间】:2019-10-31 14:54:25
【问题描述】:
我有一个调用 ASP.NET Core REST 服务的 C# 客户端应用程序。如果服务器上的 REST 服务失败,则将其配置为根据 rfc7807 返回“问题详细信息”json 响应,例如:
{
"type": "ServiceFault",
"title": "A service level error occurred executing the action FooController.Create
"status": 500,
"detail": "Code=ServiceFault; Reference=5a0912a2-df17-4f27-8e5a-0d4828022306; Message=An error occurred creating a record.",
"instance": "urn:foo-corp:error:5a0912a2-df17-4f27-8e5a-0d4828022306"
}
在客户端应用程序中,我想将此 json 消息反序列化为 ProblemDetails 的实例,作为访问详细信息的便捷方式。例如:
ProblemDetails details = await httpResp.Content.ReadAsAsync<ProblemDetails>();
但是,反序列化会引发以下异常:
System.Net.Http.UnsupportedMediaTypeException:没有 MediaTypeFormatter 可用于从内容中读取“ProblemDetails”类型的对象 媒体类型为“应用程序/问题+json”。
【问题讨论】:
标签: asp.net-core