2013-04-30 6 views

Odpowiedz

2

.ToString („O”) wydawało się rade

+0

Na końcu brakować będzie "z", jak sądzę. –

+1

Z był przy użyciu tego parametru – user1450877

+0

Ah interesujące - przykład [dokumentacja MSDN] (http://msdn.microsoft.com/en-us/library/az4se3k1.aspx) go nie ma. –

2

zajrzyj tutaj:

http://msdn.microsoft.com/en-us/library/az4se3k1.aspx#UniversalFull

Format chcesz to:

myDate.ToString("u"); 

Przykład:

DateTime date1 = new DateTime(2008, 4, 10, 6, 30, 0); 
Console.WriteLine(date1.ToUniversalTime().ToString("u")); 
// Displays 2008-04-10 13:30:00Z   

Jednak to nie jest całkiem to, czego jesteś po (choć prawdopodobnie nadal działa), więc być może trzeba będzie użyć formatu niestandardowego:

DateTime date1 = new DateTime(2008, 4, 10, 6, 30, 0); 
Console.WriteLine(date1.ToUniversalTime().ToString("yyyy-MM-dd'T'HH:mm:ss.fffffffZ")); 
// Displays 2008-04-10T13:30:00.000000Z   
+0

Jest blisko, ale to używając przestrzeni oddzielić czas od dnia, zamiast 'T'. –

+1

Edytowane, aby również pokazać T, pamiętaj - musisz najpierw przesłać swoją datę do UTC! – KaraokeStu

4

myślę, że masz za szczególne:

dateTime.ToString(“yyyy-MM-ddTHH:mm:ss.fffffffZ”); 

Musisz być ostrożny przy korzystaniu z właściwej strefy czasowej. See here for more details.

+0

zobacz mój komentarz do odpowiedzi @ user1450877. Dotyczy to również tutaj. Wygląda na to, że serializacja działa trochę inaczej. – StampedeXV

Powiązane problemy