c#
でのデータゾーンとタイムゾーンを操作します多くのプログラミングタスク、特にテストでは、特定のタイムゾーンに結び付けられたDateTime
オブジェクトの作成を要求します。 DateTime
コンストラクターはローカル、UTC、および不特定の時間を処理しますが、TimeZoneInfo
を使用すると、より正確なコントロールが提供されます。
TimeZoneInfoのレバレッジコンストラクターの
プロパティにのみ依存する代わりに、は優れたタイムゾーン管理と変換機能を提供します。
DateTime
TimeZone
カスタムDateTime構造TimeZoneInfo
をカプセル化するために、とそれに関連するタイムゾーンをカプセル化します。
実用的なアプリケーションDateTimeWithZone
DateTime
<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>
このアプローチにより、特定のタイムゾーンで
オブジェクトを使用してシームレスな作業を可能にし、UTCとローカルタイム間の変換を必要に応じて促進します。以上がC# で特定のタイムゾーンを持つ DateTime を作成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。