Question

Je vais avoir des problèmes d'essayer d'ajouter quelques dates à une classe pré-existante qui est chargé via la sérialisation XML, et il ne fait pas ce que je pensais qu'il doit faire.

Je frappais un test de base avec SQL de (où EffectiveFrom et EffectiveTo sont déclarés comme DATETIME)

SELECT  o.EffectiveFrom AS [@EffectiveFrom],
        o.EffectiveTo   AS [@EffectiveTo],
FROM    dbo.MyObject o
FOR XML PATH('MyObject'), ROOT('ArrayOfMyObject'), type

Ce qui donne XML:

<ArrayOfMyObject>
  <MyObject EffectiveFrom="1977-11-23T00:00:00" EffectiveTo="2050-01-01T00:00:00" />
</ArrayOfMyObject>

Ensuite, je l'ai déclaré la classe comme:

public class MyObject
{
    [XmlAttribute("EffectiveFrom")]
    public DateTime EffectiveFrom { get; set; }

    [XmlAttribute("EffectiveTo")]
    public DateTime EffectiveTo { get; set; }
}

Cependant, les propriétés ne sont pas définies. Je pourrais juste être avoir « un jour épais » et manquant l'évidence aveuglante, mais je l'aurais attendu à ce que « fonctionne » - des idées pourquoi il est pas

Vais-je vraiment de créer des propriétés qui appellent Date.ParseExact() sur le plateau, et ToString() le get, pour que XML signalant sérialisation et les biens immobiliers signalant que XmlIgnore()?

Était-ce utile?

La solution 2

Semble "juste travail" avec SQL Server 2008, où nous avions été en utilisant SQL Server 2005 avance

Autres conseils

Je ne vois pas une balise de fermeture pour ?

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top