Чтение массива из запроса IRestResponse

#c# #asp.net #json

#c# #asp.net #json

Вопрос:

Пытаюсь получить данные в массиве из моего Jobject

 public PostModel GetOnePost(PostModel postmodel, string token)
        {
            JObject response = context.GetOnePost(postmodel, token);

            PostModel post = new PostModel();
            post.Title = response.SelectToken("title").Value<string>();
            post.Content = response.SelectToken("content").Value<string>();
            post.Urgency = response.SelectToken("urgency").Value<string>();
            post.Slug = response.SelectToken("slug").Value<string>();
            post.Completed = response.SelectToken("completed").Value<bool>();
            return post;
        }
  

Я хочу получить заголовок из массива данных… Как мне это сделать?
это также не работает с ответом.SelectToken(«данные.заголовок»)

 {{
  "success": true,
  "msg": "Post received",
  "data": {
    "postId": "91207a39-6faa-4372-86dc-c5aa6e9f720c",
    "title": "End me",
    "content": "please",
    "slug": "end-me",
    "urgency": "low",
    "completed": false,
    "createdAt": "2019-04-23T08:26:18.988Z",
    "updatedAt": "2019-04-23T08:26:18.988Z",
    "clientClientId": "f379f920-a6f9-45b0-95c8-5f91138fb7a5",
    "tags": []
  }
}}  Newtonsoft.Json.Linq.JToken {Newtonsoft.Json.Linq.JObject}
  

Комментарии:

1. У вас есть вопрос?

2. @RoyiNamir да, как мне получить массив из объекта?

3. можете ли вы опубликовать свою структуру json?

4. @AnasAL-все готово!

5. итак, вы хотите получить tags как массив?

Ответ №1:

Если вы хотите получить tags массив в формате JSON, вы можете сделать следующее

 JObject response = context.GetOnePost(postmodel, token);
JArray array = JArray.Parse(response["data"]["tags"].ToString());
  

Чтобы получить title и content в виде строки, вы делаете следующее

 JObject response = context.GetOnePost(postmodel, token);
PostModel post = new PostModel();
post.Title = response["data"]["title"].ToString();
post.Content = response["data"]["content"].ToString();
.
.
.