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