Как получить все элементы из вызова API

#c#

#c#

Вопрос:

Я загрузил некоторый предварительно написанный код, который помогает мне выполнять вызов API. Вызов API получает все цены на конец дня за выбранный мной период времени.

Проблема в том, что я могу получить только биржевую цену за последнюю дату для отображения в программе.

Как я могу написать этот код, чтобы получить все элементы внутри «StockPricesList»?

 static void StockPricesForAllInstruments()
{
    ApiClient api = new ApiClient(_apiKey);
    InstrumentRespV1 inst = api.GetInstruments();

    foreach (var i in inst.Instruments)
    {
        StockPricesRespV1 sp = api.GetStockPrices(i.InsId.Value, Convert.ToDateTime("2012-01-01"), DateTime.Today);  

        StockPriceV1 Kurs = sp.StockPricesList.Last();
        Console.WriteLine(Kurs.C);
    }
}
  

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

1. Что произойдет, если вы измените StockPriceV1 Kurs = sp.StockPricesList.Last(); на var Kurs = sp.StockPricesList; и измените Console.WriteLine(Kurs.C); на foreach (var price in Kurs) { Console.WriteLine(price.C); } . Также было бы полезно, если бы вы связали библиотеку, которую используете.

2. StockPriceV1 Kurs = sp.StockPricesList.Last(); здесь вы получаете только последний элемент. Просто удалите .Last() , и у вас будет список.

Ответ №1:

заменить

 var Kurs = sp.StockPricesList.Last();
  

с помощью

 var Kurs = sp.StockPricesList.ToList();

foreach (StockPriceV1 kur in Kurs)
{
Console.WriteLine(kur.C);
}