gpt4 book ai didi

c# - 使用 Newtonsoft.Json,getter 中属性的支持字段是什么

转载 作者:太空宇宙 更新时间:2023-11-03 12:26:39 26 4
gpt4 key购买 nike

我想将 unix 时间戳反序列化并序列化为 DateTime,我应该在 getter 中使用的支持变量名称是什么?我正在使用标准的 Microsoft ToDo 快速入门和 Xamarin。

[JsonProperty(PropertyName = "date")]
public DateTime Date
{
get
{
System.DateTime dtDateTime = new DateTime(1970, 1, 1, 0, 0, 0, 0, System.DateTimeKind.Utc);
dtDateTime = dtDateTime.AddSeconds(WHATGOESHERE).ToLocalTime();
return dtDateTime;
}
set => ((DateTimeOffset)value).ToUnixTimeSeconds();
}

最佳答案

如果您不使用“自动实现的属性”(即 {get;set;}),则支持字段是您创建的任何内容。它不是由编译器完成的。所以:声明一个字段并使用它。

请注意,您的 set 当前并未实际将计算值分配给任何东西 - 它只是进行数学运算并将值放在地板上。 需要分配给支持字段。

不过我会说实话;我不确定为什么这不仅仅是:

[JsonProperty("date")]
public DateTime Date {get;set;}

看起来 就像您正在尝试将其转换为序列化中的 DateTime 但类型中的纪元秒。这听起来……不寻常和奇怪。不过,如果您真的想要这样做,只需为您的字段声明一个整数(long,大概),并相应地读/写。

关于c# - 使用 Newtonsoft.Json,getter 中属性的支持字段是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44567523/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com