2013-01-02 13 views
5

Quando si tratta di DateTime oggetti con WCF, è tornato DateTime oggetti mancano la proprietà Kind, sarà sempre DateTimeKind.Unspecified anche se cambio manualmente prima di restituirlo!DateTime.Kind non viene restituito in WCF

ho fatto questo nel lato WCF:

dateFrom = DateTime.SpecifyKind(dateFrom , DateTimeKind.Utc); 

ancora, viene inviato come DateTimeKind.Unspecified al cliente ...

client è un'applicazione Windows Form, il server è WCF ospitato in IIS.

P.S. Sono a conoscenza del metodo DateTime.ToUniversalTime() ma non è quello che mi serve.

+0

Da dove viene la richiesta? Come stanno ** loro ** inviando la data? –

+0

@MichaelPerrenoud Winform client, il server è WCF ospitato in IIS. –

+0

E ** come ** il client Winform sta passando la data? Comprende l'offset? –

risposta

5

È possibile trovare la soluzione in questa domanda:

Roundtrip XML Serialization of DateTime and xsd:date?

Ci sono diversi comportamenti per la gestione di data, ora e DateTime valori. Per i valori DateTime, se XmlDateTimeSerializationMode non è Locale, le informazioni sul tipo (UTC, Locale o Non specificato) sono protette da . Questo è vero anche durante la deserializzazione. Tuttavia, per Date e Time, vengono sempre serializzati con lo stesso formato: (aaaa-MM-gg per Data e HH: mm: ss.fffffff.zzzzzz per Ora). Quindi le informazioni sul tipo si perdono durante la serializzazione e deserializzazione.

+0

+1 per diritto al punto di riferimento – Askolein

Problemi correlati