Получаю json по api преобразовываю в структуру, но там получается вложенные массивы и нужно это переконвертить в нужный мне класс. Но данные приходят иногда double иногда long. И не получается привести к общему типу пробывал и float и double. Сейчас оставил float так как в доке к API описано что должны быть float, но json парсер их определяет как double. Вот дока навсякий
https://opensky-network.org/apidoc/rest.html.
Вот скрин структурки, там выделил одно и тоже поле. Оно бывает double бывает long.
Это класс, что бы он знал как конвертить json
public class AirData
{
public string icao24;
public string callsign;
public string origin_country;
public long time_position;
public long last_contact;
public float longitude;
public float latitude;
public float baro_altitude;
public bool on_ground;
public float velocity;
public float true_track;
public float vertical_rate;
public object sensors;
public float geo_altitude;
public string squawk;
public bool spi;
public long position_source;
}
Это метод где пытаюсь приводить типы как нужно
public List<AirData> ConvertToAirData()
{
var temp = new List<AirData>();
foreach (var notformatted in states)
{
var airData = new AirData();
airData.icao24 = (string) notformatted[0];
airData.callsign = (string) notformatted[1];
airData.origin_country = (string) notformatted[2];
airData.time_position = (long) notformatted[3];
airData.last_contact = (long) notformatted[4];
airData.longitude = (float) notformatted[5];
airData.latitude = (float) notformatted[6];
airData.baro_altitude = (float) notformatted[7];
airData.on_ground = (bool) notformatted[8];
airData.velocity = (float) notformatted[9];
airData.true_track = (float) notformatted[10];
airData.vertical_rate = (float) notformatted[11];
airData.sensors = notformatted[12];
airData.geo_altitude = (float) notformatted[13];
airData.squawk = (string) notformatted[14];
airData.spi = (bool) notformatted[15];
airData.position_source = (long) notformatted[16];
temp.Add(airData);
}
return temp;
}
Выдает постоянно ошибки о не правильном приведении типа.