Как получить из JSON только нужные параметры? - C#
Формулировка задачи:
Проблема в том, что сервис выдает JSON не в читабельном формате, без переноса строк и т.д (пример ниже),а просто сплошной строкой, поэтому разбить на <key,value> не получается, но как то же можно распарсить эти данные. Нужны четыре параметра title, subid1, createdAtTime и profit.
И конечно, строка может содержать массив данных любого размера. То есть (title, subid1, createdAtTime и profit) параметры не в единичном экземпляре, а их может быть сколько угодно.
{"status":200,"error":"","data":{"statsCount":3,"statsRequest":{"dayFrom":20140508,"dayTo":20140508},"statsType":"leads","stats":[{"id":1012127480694,"status":{"id":2,"title":"Отменен"},"profit":600,"createdAtTime":1399556704,"createdAtDate":"08.05.2014 17:45:04","lead":{"time":1399556704,"date":"08.05.2014 17:45:04","ip":"178.141.36.229","useragent":"Mozilla\/5.0 (Windows NT 5.1; rv:12.0) Gecko\/20100101 Firefox\/12.0"},"click":{"time":1399556531,"date":"08.05.2014 17:42:11","ip":"178.141.36.229","useragent":"Mozilla\/5.0 (Windows NT 5.1; rv:12.0) Gecko\/20100101 Firefox\/12.0"},"link":{"id":344222,"title":"Директ линк"},"subid1":"422108893","subid2":null,"offer":{"id":1034,"title":"Товары почтой: «Power Balance» - энергетический браслет"},"goal":{"id":1492,"title":"Подтвержденная заявка (Россия)"},"geo":{"country":"Россия","city":"Киров","region":"Кировская область"}},{"id":1012127516502,"status":{"id":2,"title":"Отменен"},"profit":600,"createdAtTime":1399570998,"createdAtDate":"08.05.2014 21:43:18","lead":{"time":1399570998,"date":"08.05.2014 21:43:18","ip":"46.158.141.68","useragent":"Mozilla\/5.0 (Windows NT 6.1; WOW64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/34.0.1847.131 Safari\/537.36"},"click":{"time":1399570916,"date":"08.05.2014 21:41:56","ip":"46.158.141.68","useragent":"Mozilla\/5.0 (Windows NT 6.1; WOW64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/34.0.1847.131 Safari\/537.36"},"link":{"id":344222,"title":"Директ линк"},"subid1":"422122859","subid2":null,"offer":{"id":1034,"title":"Товары почтой: «Power Balance» - энергетический браслет"},"goal":{"id":1492,"title":"Подтвержденная заявка (Россия)"},"geo":{"country":"Россия","city":"Краснодар","region":"Краснодарский край"}},{"id":1012127519017,"status":{"id":2,"title":"Отменен"},"profit":600,"createdAtTime":1399572928,"createdAtDate":"08.05.2014 22:15:28","lead":{"time":1399572928,"date":"08.05.2014 22:15:28","ip":"91.76.255.41","useragent":"Mozilla\/5.0 (Windows NT 6.1; WOW64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/34.0.1847.132 Safari\/537.36 OPR\/21.0.1432.57"},"click":{"time":1399572915,"date":"08.05.2014 22:15:15","ip":"91.76.255.41","useragent":"Mozilla\/5.0 (Windows NT 6.1; WOW64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/34.0.1847.132 Safari\/537.36 OPR\/21.0.1432.57"},"link":{"id":344222,"title":"Директ линк"},"subid1":"422131765","subid2":null,"offer":{"id":1034,"title":"Товары почтой: «Power Balance» - энергетический браслет"},"goal":{"id":1492,"title":"Подтвержденная заявка (Россия)"},"geo":{"country":"Россия","city":"Москва","region":"Москва"}}]},"docs":"API documentation located at http:\/\/developers.ad1.ru\/network\/v1\/WmStats"}
Решение задачи: «Как получить из JSON только нужные параметры?»
textual
Листинг программы
public class WmStats { public int status { get; set; } public string error { get; set; } public Data data { get; set; } public string docs { get; set; } public class Data { public int statsCount { get; set; } public StatsRequest statsRequest { get; set; } public string statsType { get; set; } public Stats[] stats { get;set;} } public class StatsRequest { public string dayFrom {get;set;} public string dayTo {get;set;} } public class Stats { public string id { get; set; } public Status status { get; set; } public double profit { get;set;} public string createdAtTime { get;set;} public string createdAtDate { get;set;} public Lead lead {get;set;} public Click click {get;set;} public Link link {get;set;} public string subid1 {get;set;} public string subid2 {get;set;} public Offer offer {get;set;} public Goal goal {get;set;} public Geo geo { get; set; } } public class Status { public int id { get; set; } public string title{get;set;} } public class Lead { public string time { get; set; } public string date{ get; set; } public string ip{ get; set; } public string useragent { get; set; } } public class Click { public string time { get; set; } public string date { get; set; } public string ip { get; set; } public string useragent { get; set; } } public class Link { public int id { get; set; } public string title { get; set; } } public class Offer { public int id { get; set; } public string title { get; set; } } public class Goal { public int id { get; set; } public string title { get; set; } } public class Geo { public string country { get; set; } public string city { get; set; } public string region { get; set; } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д