2010-12-13 46 views
0

Mon WCF utilise XmlSerializer pour sérialiser et désérialiser des objets assez complexes. Le problème est que la valeur de charge utile XML correspondante de l'une des propriétés DateTime peut être spécifiée en tant que valeurs xs: date, xs: time ou xs: dateTime. J'ai remarqué que lorsqu'une valeur temporelle (par exemple 16: 55: 00Z) est spécifiée dans le XML d'entrée, la date courante est "ajoutée" lors de la désérialisation (par exemple 2010-12-13T16: 55: 00Z). Cela crée évidemment de fausses données, j'aurais préféré utiliser DateTime.MinValue. Y a-t-il un moyen de contrôler ce comportement?XmlSerializer, désérialisation de l'heure uniquement dans le type DateTime

Merci à l'avance

+1

Comment cela a-t-il un sens? Cela a autant de sens qu'une propriété qui peut être int, string ou base64. –

+0

Je suis d'accord oui, c'est un autre de ces cas où l'on n'a aucun contrôle sur les données qui vous sont envoyées. Ce qui me semble tout aussi peu logique, c'est pourquoi la date actuelle est simplement ajoutée lors de la désérialisation – Dawie

Répondre