подскажите пожалуйста. Как можно записать json вот так ?
{
"Date": "2019年08月01日T00:00:00-07:00",
"TemperatureCelsius": 25,
"Summary": "Hot",
"DatesAvailable": [
"2019年08月01日T00:00:00-07:00",
"2019年08月02日T00:00:00-07:00"
],
"TemperatureRanges": {
"Cold": {
"High": 20,
"Low": -10
},
"Hot": {
"High": 60,
"Low": 20
}
},
"SummaryWords": [
"Cool",
"Windy",
"Humid"
]
}
А так же его прочитать? Сколько искал информации в гугле - ничего понятного для меня я не нашел. Буду рад тем кто подскажет.
Vitalizzare
3,7492 золотых знака12 серебряных знаков43 бронзовых знака
2 ответа 2
Есть удобный сайт для конвертирования JSON в C#
Это будет выглядеть так:
// Создание объекта
// Root myDeserializedClass = JsonConvert.DeserializeObject<Root>(myJsonResponse);
public class Cold
{
public int High { get; set; }
public int Low { get; set; }
}
public class Hot
{
public int High { get; set; }
public int Low { get; set; }
}
public class Root
{
public DateTime Date { get; set; }
public int TemperatureCelsius { get; set; }
public string Summary { get; set; }
public List<DateTime> DatesAvailable { get; set; }
public TemperatureRanges TemperatureRanges { get; set; }
public List<string> SummaryWords { get; set; }
}
public class TemperatureRanges
{
public Cold Cold { get; set; }
public Hot Hot { get; set; }
}
Так же можно воспользоваться инструментом quicktype.io. Для такого json выдаёт следующий результат (обрезал технические классы):
public partial class Forecast
{
[JsonProperty("Date")]
public DateTimeOffset Date { get; set; }
[JsonProperty("TemperatureCelsius")]
public long TemperatureCelsius { get; set; }
[JsonProperty("Summary")]
public string Summary { get; set; }
[JsonProperty("DatesAvailable")]
public List<DateTimeOffset> DatesAvailable { get; set; }
[JsonProperty("TemperatureRanges")]
public TemperatureRanges TemperatureRanges { get; set; }
[JsonProperty("SummaryWords")]
public List<string> SummaryWords { get; set; }
}
public partial class TemperatureRanges
{
[JsonProperty("Cold")]
public Cold Cold { get; set; }
[JsonProperty("Hot")]
public Cold Hot { get; set; }
}
public partial class Cold
{
[JsonProperty("High")]
public long High { get; set; }
[JsonProperty("Low")]
public long Low { get; set; }
}
Название класса Cold можно заменить на то, что вам больше подходит
ответ дан 25 нояб. 2025 в 16:20
Nik
2,5642 золотых знака14 серебряных знаков27 бронзовых знаков
Начните задавать вопросы и получать на них ответы
Найдите ответ на свой вопрос, задав его.
Задать вопросlang-cs
\"и все будет хорошо"Name": value- это свойство (public string Name {get;set;}) например.{ ... }- класс, содержащий в себе свойства. Ну а[ ... ]- простой массив/коллекция.