[英]Asp.Net Web API List model is returning List<List>>
我通过 ajax 呼叫第三方 API 并返回数据 Model object。
public class AddressModel
{
public List<Address> address {get; set;}
public List<Component> components {get; set;}
}
public class Address
{
public string address1 { get; set;}
public string address2 { get; set;}
public string postalCode { get; set;}
}
Api Controller:
[HttpGet]
public IHttpActionResult GetAddress(string id)
{
** code **
var addr = _service.GetAddressById(id);
return Ok(addr);
}
public AddressModel GetAddressById(string id)
{
** code **
HttpResponseMessage response = client.GetAsync(uri).Result;
return response.Content.ReadAsAsync<AddressModel>().Result;
}
但是我得到的 Json 数据如下:
"address" : [
{
"address1: "Via Benedetto",
"address2: null,
"postalCode": null
},
{
"address1": null,
"address2": "Viadanna",
"postalCode": null
},
{
"address1": null,
"address2": null,
"postalCode": "01234"
}
]
它正在返回一个列表列表。 它应该只返回一个列表
我期待这个:
"address" : [
{
"address1: "Via Benedetto",
"address2": "Viadanna",
"postalCode": "01234"
}
]
试试这个(使用 Newtonsoft.Json )
if (response.IsSuccessStatusCode)
{
var stringData = response.Content.ReadAsStringAsync().Result;
return JsonConvert.DeserializeObject<AddressModel>(stringData);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.