J'ai besoin de sérialiser/désérialiser un datetime au format yyyyMMdd pour un fichier XML. Existe-t-il un attribut/solution de contournement que je peux utiliser pour cela?
Non, il n'y en a pas. Si c'est dans ce format, ce n'est pas un dateTime valide en ce qui concerne le schéma XML.
Le mieux que vous puissiez faire est le suivant:
[XmlIgnore]
public DateTime DoNotSerialize {get;set;}
public string ProxyDateTime {
get {return DoNotSerialize.ToString("yyyyMMdd");}
set {DoNotSerialize = DateTime.Parse(value);}
}
XmlElementAttribute # DataType devrait fournir ce dont vous avez besoin:
[XmlElement(DataType="date")]
public DateTime Date1 {get;set;}
Cela obtiendra la propriété Date1 sérialisée au format xml date approprié.