2017-05-12 8 views

Antwort

0

Sie können DateTimeOffset verwenden, um ein Datum mit dem Offset zu erstellen.

var dbDate = myRawDbDate.Kind == DateTimeKind.Unknown ? DateTime.SpecifyKind(myRawDbDate, DateTimeKind.Utc): myRawDbDate; 
var localDdate = new DateTimeOffset(dbDate, new TimeSpan(0,6,0)).DateTime; 
+0

Das Datum noch nicht in UTC-6 konvertiert .. DateTime.SpecifyKind (myRawDbDate, DateTimeKind.Utc) Dies wird UTC lokale Datum Uhrzeit zurückgeben. –

+0

@DrewAguirre bearbeitet Antwort –

+1

Kleine Syntaxfehler: fehlende schließende Klammern vor '.DateTime' und die Groß-/Kleinschreibung von' TimeSpan'. Du könntest auch das besser lesbare (für mich) "TimeSpan.FromHours (6)" verwenden. –

0

Hallo Sie können TimeZoneInfo Klasse verwenden.

var timeZone = TimeZoneInfo.FindSystemTimeZoneById("Central Standard Time"); //UTC-6 
var UTC6date = TimeZoneInfo.ConvertTimeFromUtc(Yourdate.ToUniversalTime(), timeZone); 

für weitere Informationen hier ist der Link. MSDN: 00 usw.

Verwenden TimeZoneInfo.GetSystemTimeZones() Methode: https://msdn.microsoft.com/en-us/library/bb382835(v=vs.110).aspx

all die Zeitzone für UTC-6 anzuzeigen.

Beispielcode:

var timeZonList = TimeZoneInfo.GetSystemTimeZones(); 

    foreach (var item in timeZonList) 
    { 
     Console.WriteLine(item); 
    } 

TimeZoneInfo.ConvertTimeFromUtc(date converted to universal time, "Timezone to convert your date"). 

Hoffnung, das hilft.

Verwandte Themen