我有以下代碼:如何設置類的XmlElement C#默認的DateTimeOffset值
public sealed class MyClass
{
[XmlElement("Remind")]
public string lastUpdatedTimeForXml2
{
get { return Remind.ToString("yyyy-MM-ddTHH:mm:ss"); }
set { Remind = DateTimeOffset.Parse(value); }
}
[XmlIgnore]
public DateTimeOffset Remind { get; set; }
}
而我的問題是,當不存在提醒值在文件中它是由0001-01-01T00替換它:00:00並在線崩潰:「set {Remind = DateTimeOffset.Parse(value);}」
編輯。
好吧,我解決了這個問題做這樣的事情:
[XmlElement("Remind")]
public string lastUpdatedTimeForXml2
{
get { return Remind.ToString("yyyy-MM-ddTHH:mm:ss"); }
set
{
if (value == "0001-01-01T00:00:00")
Remind = DateTimeOffset.MinValue;
else
Remind = DateTimeOffset.Parse(value);
}
}
[XmlIgnore]
現在沒有崩潰,但我不知道爲什麼。這是最好的解決方案?
你是在東半球嗎?您會收到異常消息_日期的UTC表示落在年度範圍1-9999._之外,是嗎?你期待什麼時區? (如果需要,你可以使用'TryParse'。) –