Я пытаюсь сериализовать модель в формат Json.Это моя модель:
public class UemSiteAvailabilityDetailsRec
{
public string UemAlias;
public string IpAddress;
public DateTimeOffset Date;
public string PlannedOutage;
public string Severity;
public string SiteName;
public string SiteNumber;
public string SourceAgentIp;
public string Message;
}
Это мой код для сериализации экземпляра модели:
var rec = //GETTING REC FROM DATABASE
var val = JsonNet.Serialize(rec);
И после этого мой val
выглядит так:
{
"UemAlias": "***.***.**.**",
"IpAddress": "***.***.**.**",
"Date": {
"DateTime": "01\/24\/2019 00:00:21",
"UtcDateTime": "01\/24\/2019 06:00:21",
"LocalDateTime": "01\/24\/2019 00:00:21",
"Date": "01\/24\/2019 00:00:00",
"Day": 24,
"DayOfWeek": 4,
"DayOfYear": 24,
"Hour": 0,
"Millisecond": 800,
"Minute": 0,
"Month": 1,
"Offset": {
"Ticks": -216000000000,
"Days": 0,
"Hours": -6,
"Milliseconds": 0,
"Minutes": 0,
"Seconds": 0,
"TotalDays": -0.25,
"TotalHours": -6,
"TotalMilliseconds": -21600000,
"TotalMinutes": -360,
"TotalSeconds": -21600
},
"Second": 21,
"Ticks": 636838848218000000,
"UtcTicks": 636839064218000000,
"TimeOfDay": {
"Ticks": 218000000,
"Days": 0,
"Hours": 0,
"Milliseconds": 800,
"Minutes": 0,
"Seconds": 21,
"TotalDays": 0.000252314814814815,
"TotalHours": 0.00605555555555556,
"TotalMilliseconds": 21800,
"TotalMinutes": 0.363333333333333,
"TotalSeconds": 21.8
},
"Year": 2019
},
"PlannedOutage": "No",
"Severity": "Critical",
"SiteName": "BA_ISSI",
"SiteNumber": null,
"SourceAgentIp": null,
"Message": "SITE TRUNKING, DEVICE CRITICAL MALFUNCTION"
}
Как видите, мой объект даты выглядит так, как будто в нем больше материала, чем мне нужно.И позже, когда я пытаюсь десериализовать строку следующим образом:
var rec = JsonConvert.DeserializeObject<UemSiteAvailabilityDetailsModel>(val);
я получаю сообщение об ошибке ...
При анализе значения обнаружен неожиданный символ: {.Путь 'Дата', строка 1, позиция 64. |
Как я могу сделать функцию сериализации сделать DateTimeOffset
сериализацию более краткой и не вызвать ошибок?