Heim >Backend-Entwicklung >C++ >Wie erstelle ich ein DateTime -Objekt mit einer bestimmten Zeitzone in C#?

Wie erstelle ich ein DateTime -Objekt mit einer bestimmten Zeitzone in C#?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2025-01-26 04:11:08983Durchsuche

How to Create a DateTime Object with a Specific Time Zone in C#?

Erstellen Sie das DateTime -Objekt mit einer bestimmten Zeitzone in C#

beim Testen von Szenarien oder beim Anwenden von Anwendungen in verschiedenen Zeitzonen ist das Erstellen von DateTime -Objekten mit einer bestimmten Zeitzone eine sehr häufige Anforderung. Der DateTime Constructor in C#bietet begrenzte Optionen für die angegebene Zeitzone.

Um DateTime -Objekte mit einer bestimmten Zeitzone zu erstellen, können Sie die Methode von DateTime.Pecifykind () verwenden, um den Typ des DateTime -Objekts (lokal, utc oder nicht spezifiziert) anzugeben und dann TimeZoneinfo.Convertime () oder TimeZoneinfo zu verwenden () Konversionszeit Es ist die Zeitzone erforderlich.

Es ist jedoch flexibler, die TimeZoneinfo -Klasse zu verwenden. So bedienen Sie das folgende Beispiel:

DATETIMEWITHTIMEZONE -STRUKTUR CASPULATE UTC DATTIMETIME und TIMEZONEINFO, sodass Sie leicht zwischen der UTC -Zeit und der lokalen Zeit ändern können. Wenn Sie sich aus Leistungsgründen mit einer großen Anzahl von DateTime -Objekten befassen, ist es am besten, Strukturen anstelle der Klasse zu verwenden.
<code class="language-csharp">using System;

public class DateTimeWithTimeZone
{
    private readonly DateTime utcDateTime;
    private readonly TimeZoneInfo timeZone;

    public DateTimeWithTimeZone(DateTime dateTime, TimeZoneInfo timeZone)
    {
        utcDateTime = dateTime.ToUniversalTime();
        this.timeZone = timeZone;
    }

    public DateTime UniversalTime => utcDateTime;

    public TimeZoneInfo TimeZone => timeZone;

    public DateTime LocalTime => TimeZoneInfo.ConvertTimeFromUtc(utcDateTime, timeZone);
}</code>

Diese Methode bietet eine größere Flexibilität und Codeklarheit bei der Verwendung von DateTime -Objekten in einer bestimmten Zeitzone.

Das obige ist der detaillierte Inhalt vonWie erstelle ich ein DateTime -Objekt mit einer bestimmten Zeitzone in C#?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn