我需要從XML文件中將(除其他之外)日期帶入到我的C#應用程序中的PostgreSQL表中。C#XmlSerializer反序列化日期格式
我的問題是,如果我宣佈現場像這樣的字符串:
[XmlAttribute("startDate")]
public string StartDate { get; set; }
它不會在所有(值爲null)反序列化。我若爲日期時間是這樣的:
[XmlAttribute("startDate")]
public DateTime StartDate { get; set; }
不管我進入XML領域,我總是得到值01.01.0001 00:00:00
。
我試着用YYYY-MM-DD,YYYY/MM/DD和DD.MM.YYYY輸入日期。我究竟做錯了什麼?它適用於其他字符串和整數。
編輯:
例XML:
<?xml version="1.0" encoding="utf-8" ?>
<command name="TestCommand">
<weeks>11</weeks> <!-- this works fine -->
<startDate>2017/02/01</startDate> <!-- this doesn't -->
</command>
反序列化發生使用XmlSerializer.Deserialize()插入其中包括的字段的配置文件我給上述
你能舉例說明負責反序列化的示例xml和代碼嗎? – MajkeloDev
你有沒有嘗試在'XmlAttribute'中設置'DataType =「date」'? –
@JonSkeet - 我認爲問題在別的地方。請注意,當OP將數據類型更改爲字符串時,它將被反序列化爲空 – MajkeloDev