Uwp 如何在Refit中设置自定义JSON序列化程序

Uwp 如何在Refit中设置自定义JSON序列化程序,uwp,refit,Uwp,Refit,目前,API响应包括两个顶级属性,它们对我的需要没有任何用处 a: { b: { c: [ data: whichINeed ] } } 如果我为此创建模型,我将有不必要的根对象,我想摆脱? 如何在Windows应用程序的Refit中执行此操作?您可以尝试使用Newtonsoft.JSONnuget软件包过滤JSON字符串 您提供的JSON不完整。我假设这个JSON字符串是一个对象,最外层是{},然后我们可以像这样解析

目前,API响应包括两个顶级属性,它们对我的需要没有任何用处

a: {
   b: {
      c: [
           data: whichINeed
         ]
      }
   }
如果我为此创建模型,我将有不必要的根对象,我想摆脱?
如何在Windows应用程序的Refit中执行此操作?

您可以尝试使用
Newtonsoft.JSON
nuget软件包过滤JSON字符串

您提供的JSON不完整。我假设这个JSON字符串是一个
对象
,最外层是
{}
,然后我们可以像这样解析它

var obj=JObject.Parse(jsonString);
var c=obj[“a”][“b”][“c”];
var myTransferModel=JsonConvert.DeserializeObject(c.ToString());
如果最外层是
[]
,请使用
JArray
进行解析


更新

Refit
封装网络请求和JSON解析。您可以通过
HttpClient
直接发送web请求以获取JSON字符串

公共异步任务GetJsonString(字符串url) { 字符串结果=string.Empty; var client=新的HttpClient(); var response=client.GetAsync(url); if(响应。IsSuccessStatusCode) { 结果=wait response.Content.ReadAsStringAsync(); } 返回结果; } 致以最诚挚的问候。

RestService.For(“主机”),
RestService.For<T>("host"),
            new RefitSettings
            {
                ContentSerializer = new NewtonsoftJsonContentSerializer(jsonSerializerSettings)
            });
新设置 { ContentSerializer=新的NewtonsoftJsonContentSerializer(jsonSerializerSettings) });
我正在使用,如何获取Json字符串?对不起,我是新来的,我听不懂那部分。