日時をXMLファイル用にyyyyMMdd形式にシリアライズ/デシリアライズする必要があります。これに使用できる属性/回避策はありますか?
いいえ、ありません。その形式の場合、XMLスキーマに関する限り有効なdateTimeではありません。
最善の方法は次のとおりです。
[XmlIgnore]
public DateTime DoNotSerialize {get;set;}
public string ProxyDateTime {
get {return DoNotSerialize.ToString("yyyyMMdd");}
set {DoNotSerialize = DateTime.Parse(value);}
}
XmlElementAttribute #DataTypeは必要なものを提供する必要があります。
[XmlElement(DataType="date")]
public DateTime Date1 {get;set;}
これにより、適切な xml日付 形式にシリアル化されたDate1プロパティが取得されます。