我正在尝试将模型序列化为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);
我得到了错误。。。
分析值时遇到意外字符:{.Path“Date”,
第1行,第64位|
如何使序列化函数
DateTimeOffset
序列化更简洁且不会导致错误?