Domanda

Sto avendo problemi cercando di aggiungere alcune date a una classe preesistente che viene caricato tramite la serializzazione XML, e non sta facendo quello che ho pensato che dovrebbe fare.

Ho bussato a un test di base con SQL di (dove EffectiveFrom e EffectiveTo sono dichiarate come DATETIME)

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

Che dà XML:

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

Poi ho dichiarato la classe come:

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

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

Tuttavia, non vengono impostate le proprietà. Mi potrebbe essere proprio avere "una giornata densa" e manca l'ovvio accecante, ma mi sarei aspettato questo per "solo lavoro" -? Tutte le idee perché non è

Sarò davvero necessario creare alcune proprietà di stringa che chiamano Date.ParseExact() sul set, e ToString() sulla get, segnalando che per la serializzazione XML, e segnalando le proprietà reali come XmlIgnore()?

È stato utile?

Soluzione 2

sembra "solo lavoro" con SQL Server 2008, in cui quanto ci era stato l'utilizzo di SQL Server 2005 in anticipo

Altri suggerimenti

Non vedo un tag di chiusura per ?

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top