Парсер JSON массива - C#
Формулировка задачи:
Люди добрые, помогите пожалуйста.
Имеется json-ответ от сервера вида:
[{"item_1":number1,"item_2":number2,"item_3":number3}, {"item_1":number4,"item_2":number5,"item_3":number6}, { …} , {…}, ….]
классы и переменные заданы примерно так:
Как правильно вывести результат массива в консоль?
на вывод типа Console.WriteLine(view);
в консоль выводится System.Collections.Generic.List`1[Root.TestInfo] и все.
public class TestInfo
{
public decimal item1 { get; private set; }
public decimal item2 { get; private set; }
public UInt32 item3 { get; private set; }
public static TestInfo ReadFromJObject(JObject o)
{
if (o == null)
return null;
return new TestInfo()
{
Item1 = o.Value<decimal>("item_1"),
Item2 = o.Value<decimal>("item_2"),
Item3 = o.Value<UInt32>("item_3"),
};
}
}var view = TestApi.GetTest(SecondType.tree);
namespace Root
{
class WebApi
{
........
}
public class TestApi
{
......
}
public static List<TestInfo> GetTest(SecondType rest)
{
string queryStr = string.Format("https://mysite.ru/api/tree", SecondTypeHelper.ToString(rest));
Return JArray.Parse(WebApi.Query(queryStr)).OfType<JObject>().Select(TestInfo.ReadFromJObject).ToList();
}
.......
}Решение задачи: «Парсер JSON массива»
textual
Листинг программы
public class Return
{
public double usd { get; set; }
public double? btc { get; set; }
public int? ltc { get; set; }
public int? grc { get; set; }
public int? drk { get; set; }
public int? qrk { get; set; }
public int? doge { get; set; }
public int? blc { get; set; }
public double? stc { get; set; }
public int? __invalid_name__ nmc { get; set; }
public int? ixc { get; set; }
public int? dvc { get; set; }
public int? dgc { get; set; }
public int? ppc { get; set; }
public int? ftc { get; set; }
public int? __invalid_name__ q2c { get; set; }
public int? tes { get; set; }
public int? usde { get; set; }
public int? ttc { get; set; }
public int? csc { get; set; }
public int? frk { get; set; }
public int? uni { get; set; }
public int? ant { get; set; }
public int? zed { get; set; }
public int? fry { get; set; }
public int? vtc { get; set; }
public int? leaf { get; set; }
public int? mim { get; set; }
public int? duck { get; set; }
public int? fsc { get; set; }
}
public class RootObject
{
public List<Return> @return { get; set; }
}
как преобразовывать
RootObject root = JsonDeserialize<RootObject>("Сюда передать Json");