我是C#REST API的新手...我只是将JSON转换为字符串数组
这是我的JSON
[{"Id":1000,"Name":"May","Address":"Atlanda","Country":"USA","Phone":12345}}
像下面的代码一样转换数组
string[] details={1000,May,Atlanda,USA,12345};
帮我解决这个问题
我的代码
public class details
{
public int Id { get; set; }
public string Name { get; set; }
public string Address { get; set; }
public string Country { get; set; }
public int Phone { get; set; }
}
这是我的课程
var client = new RestClient("http://localhost:3000/customer/1000");
var request = new RestRequest(Method.GET);
IRestResponse response = client.Execute(request);
string json = new JavaScriptSerializer().Serialize(response.Content);
答案 0 :(得分:0)
您可以使用新的System.Text.Json API将response.Content
反序列化为details
类,如下所示。
JsonSerializer.Parse<details>(response.Content);
有关更多信息,您可以阅读Try the new System.Text.Json APIs。
答案 1 :(得分:0)
如果您使用JSON.NET,它肯定会让您更轻松。我的答案使用JSON.NET:
string str = "[{\"Id\":1000,\"Name\":\"May\",\"Address\":\"Atlanda\",\"Country\":\"USA\",\"Phone\":12345}]";
var listOfDetails = JsonConvert.DeserializeObject<List<details>>(str);
foreach (var detail in listOfDetails)
{
var arr = detail.ToArr();
}
以下是details
类:
public class details
{
public int Id { get; set; }
public string Name { get; set; }
public string Address { get; set; }
public string Country { get; set; }
public int Phone { get; set; }
public string[] ToArr()
{
List<string> list = new List<string> { Id.ToString(), Name, Address, Country, Phone.ToString() };
return list.ToArray();
}
}
结果: