Heim > Backend-Entwicklung > C++ > Wie kann ich Datensätze mit bestimmten Zeitzonen in C#erstellen?

Wie kann ich Datensätze mit bestimmten Zeitzonen in C#erstellen?

Susan Sarandon
Freigeben: 2025-01-26 04:31:08
Original
288 Leute haben es durchsucht

How Can I Create DateTimes with Specific Time Zones in C#?

Arbeiten mit DateTen und Zeitzonen in C#

arbeiten

Viele Programmieraufgaben, insbesondere bei den Tests, erfordern die Erstellung von DateTime -Objekten, die an bestimmte Zeitzonen gebunden sind. Während der DateTime Konstruktor die lokalen, UTC- und nicht spezifizierten Zeiten übernimmt und TimeZoneInfo eine genauere Steuerung bietet.

Nutzung von Timezoneinfo

Anstatt sich nur auf die DateTime -Konstruktor -Eigenschaft zu verlassen, bietet TimeZone TimeZoneInfo die Funktionen für die Verwaltung von Zeitzonen und die Konvertierung.

benutzerdefinierte DateTime -Struktur

Dieses Beispiel verwendet eine benutzerdefinierte Struktur DateTimeWithZone, um ein DateTime und seine zugehörige Zeitzone zu verringern:

<code class="language-csharp">public struct DateTimeWithZone
{
    private readonly DateTime utcDateTime;
    private readonly TimeZoneInfo timeZone;

    public DateTimeWithZone(DateTime dateTime, TimeZoneInfo timeZone)
    {
        var dateTimeUnspec = DateTime.SpecifyKind(dateTime, DateTimeKind.Unspecified);
        utcDateTime = TimeZoneInfo.ConvertTimeToUtc(dateTimeUnspec, timeZone);
        this.timeZone = timeZone;
    }

    public DateTime UniversalTime => utcDateTime;
    public TimeZoneInfo TimeZone => timeZone;
    public DateTime LocalTime => TimeZoneInfo.ConvertTime(utcDateTime, timeZone);
}</code>
Nach dem Login kopieren

Praktische Anwendung

, um ein DateTimeWithZone Objekt in der Pacific Standard Time (PST) Zone zu erstellen:

<code class="language-csharp">var pstDateTime = new DateTimeWithZone(new DateTime(2023, 1, 1), TimeZoneInfo.FindSystemTimeZoneById("Pacific Standard Time"));</code>
Nach dem Login kopieren

Dieser Ansatz ermöglicht nahtlose Arbeiten mit DateTime Objekten in bestimmten Zeitzonen und erleichtert die Conversions zwischen UTC und lokaler Zeit nach Bedarf.

Das obige ist der detaillierte Inhalt vonWie kann ich Datensätze mit bestimmten Zeitzonen in C#erstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage