C# Newtonsoft.Json.Linq.JArray';输入';System.Collections.Generic.IEnumerable
我正在从我的C#桌面客户端调用我的web api 这是我在客户端上的代码:C# Newtonsoft.Json.Linq.JArray';输入';System.Collections.Generic.IEnumerable,c#,json,asp.net-web-api,client,C#,Json,Asp.net Web Api,Client,我正在从我的C#桌面客户端调用我的web api 这是我在客户端上的代码: public IEnumerable<Model.Print> Get() { var print = new List<Model.Print>(); using (var client = new HttpClient()) { client.BaseAddress = new Uri(Shared.URL); client.Defau
public IEnumerable<Model.Print> Get()
{
var print = new List<Model.Print>();
using (var client = new HttpClient())
{
client.BaseAddress = new Uri(Shared.URL);
client.DefaultRequestHeaders.Accept.Clear();
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue(Shared.HeaderType));
var response = client.GetAsync(route + "?" + GeneralTags.CUSTOMER_REF + "=" + new Guid().ToString()).Result;
if (response.IsSuccessStatusCode)
{
string strJson = response.Content.ReadAsStringAsync().Result;
var jObj2 = (IEnumerable<Model.Print>)JsonConvert.DeserializeObject(strJson);
}
else
{
evError(new Exception(String.Format("{0}: {1}", (int)response.StatusCode, response.ReasonPhrase)), ErrorTags.PRINT_GET);
}
}
return print;
}
strJson包含一个值:
[
{"PrintId":1,"PrintRef":"00000000-0000-0000-0000-000000000000","Header":"header","TC":"tc","CompanyRef":"00000000-0000-0000-0000-000000000000"},
{"PrintId":2,"PrintRef":"39a10cee-7cb3-4ed3-aec2-293761eed96d","Header":"header","TC":"tc","CompanyRef":"00000000-0000-0000-0000-000000000000"}]
我缺少什么?使用
jsonvert.DeserializeObject
:
var jObj2 = JsonConvert.DeserializeObject<List<Model.Print>>(strJson);
var jObj2=JsonConvert.DeserializeObject(strJson);
如果您想格式化嵌套的json结构,如下图所示。您可以在中使用以下格式化程序
解决方案:
var\u addressDetails=JsonConvert.DeserializeObject>(Convert.ToString(data.addressDetails))嗨,谢谢你的回答。这在桌面上是可行的,但在覆盆子PI2上不行——我没有规定。但它在这个论坛上起了作用。谢谢
[
{"PrintId":1,"PrintRef":"00000000-0000-0000-0000-000000000000","Header":"header","TC":"tc","CompanyRef":"00000000-0000-0000-0000-000000000000"},
{"PrintId":2,"PrintRef":"39a10cee-7cb3-4ed3-aec2-293761eed96d","Header":"header","TC":"tc","CompanyRef":"00000000-0000-0000-0000-000000000000"}]
var jObj2 = JsonConvert.DeserializeObject<List<Model.Print>>(strJson);