3


0

ASP.NET(MVC)アプリケーションのTimeZoneを設定する方法

私のアプリケーションは、私のものとは異なるタイムゾーンのサーバーでホストされています。 データベースのすべての日付が私のタイムゾーンに対して正しくありません。 アプリケーションのタイムゾーンを設定する方法、または出力時に日付をタイムゾーンに変換する方法

2 Answer


3


プロセスのタイムゾーンを設定しないでください-.NET 3.5以降のhttp://msdn.microsoft.com/en-us/library/system.timezoneinfo.aspx [TimeZoneInfo]を使用して、関連する変換を実行します。

もちろん、データがデータベースから返されるタイムゾーンを知っていることを前提としています…​ 通常、データベースレコードはUTCで保持されますが、常にではありません…​


1


それを行うには非常に簡単な方法があります。 単純に現在のUTC時刻とタイムゾーンを取得します。 あなたのタイムゾーンにUTCに変換します。 これがあなたのやり方です。

 DateTime date1 = DateTime.UtcNow;
 TimeZoneInfo tz = TimeZoneInfo.FindSystemTimeZoneById("YOUR TIME ZONE (e.g. Pakistan Standard Time)");
 DateTime date2 = TimeZoneInfo.ConvertTime(date1, tz);

TZであなたのタイムゾーンを設定し、「date2の」どこでもを使用しています。