字段 modifyDate 从未分配给,并且始终具有默认值 0

Field modifyDate is never assigned to, and will always have its default value 0

有人可以向我解释为什么我会收到此警告吗?我已经测试了代码并且它有效,我得到了我应该在那里得到的价值。这是错误警告还是我遗漏了什么?

[DataMember(Name = "modifyDate")]        
private long modifyDate;

public DateTime lastModified 
{
    get { return DateTimeConverter.FromUnixTime(modifyDate); }
}

这是一个编译器警告,这意味着编译器在编译时找不到任何可以赋值的代码。但是,仍然有可能在运行时 赋值。在您的情况下,这是由 DataContractJsonSerializer.

完成的

如果你知道,你可以通过写

来禁用警告
#pragma warning disable 0649

受影响的代码行之前和

#pragma warning restore 0649

在代码行之后。

通常您还应该添加注释为什么要使用该 pragma 指令,例如

// This field is assigned to by JSON deserialization