@roflanPominki

Как можно упростить код с заходом в массив по ключу в List Newtonsoft.Json.Linq?

Класс GetRequest:
public class GetRequest
    {
        private HttpWebRequest _request;
        private string _address;

        public string Response { get; set; }
        public GetRequest(string address)
        {
            _address = address;
        }
        public void Run()
        {
            _request = (HttpWebRequest)WebRequest.Create(_address);
            _request.Method = "Get";

            try
            {
                HttpWebResponse response = (HttpWebResponse)_request.GetResponse();
                var stream = response.GetResponseStream();
                if (stream != null) Response = new StreamReader(stream).ReadToEnd();
            }
            catch (Exception)
            {

            }
        }

Метод Main:
internal class Program
    {
        static void Main(string[] args)
        {
            var request = new GetRequest("https://cryptingup.com/api/exchanges/BINANCE");
            request.Run();
            var response = request.Response;

            var json = JObject.Parse(response);
            List<JToken> tokens = json.Children().ToList();
            var exchanges = tokens[0];
            
            foreach (var j in json)
            {
                var ex = json["exchange"];
                var quote = ex["quote"];
                var eur = quote["EUR"];
                var volume_24h = eur["volume_24h"];
                Console.WriteLine(volume_24h);
            }
        }
    }

Вопрос состоит в том что для каждой итерации я пишу код строчку которая заходит глубже в List, но если подумать что таких итераций нужно будет даже 50 это 50 строчек кода. Или такой способ это максимум что можно сделать ?-
Console.WriteLine(json["exchange"]["quote"]["EUR"]["volume_24h"]);
  • Вопрос задан
  • 112 просмотров
Решения вопроса 1
yarosroman
@yarosroman Куратор тега C#
C# the best
https://www.newtonsoft.com/json/help/html/Serializ...
https://rextester.com/SNOG90030

да, это называется десериализация
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
freeExec
@freeExec
Участник OpenStreetMap
Да.
Или вы способны телепатически отправить путь в запросе в программу? Тогда научите браузеры так же работать, а не писать им все эти бла/бла/бла/ещё/разок/и/последний/бла
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы