0

aspでタイムゾーンを変更する方法を探しています。検索していたので、web.configファイルを使用して変更できると考えましたが、ヨルダン時間と同期するように設定する方法がわかりませんでした。

4

1 に答える 1

0

「タイムゾーンを変更する」とはどういう意味ですか? 現在のタイムゾーン設定は Windows プロファイルのプロパティであるため、w3wp.exe プロセスを実行するユーザー ID に属します。CultureInfo のようなスレッドごとの設定はありません。

アプリケーションでカスタム タイムゾーンのサポートが必要な場合、アプリケーションのユーザー設定の一部として TimeZoneInfo オブジェクトを保存します (およびセッション状態に保存します)。内部的にはすべての日付と時刻が UTC であり、レンダリング時にユーザーの TimeZoneInfo インスタンスを使用してこれらの UTC 値をローカルに変換するだけです。同様のことをすることをお勧めします:

// At user login or session start
Session["TimeZone"] = TimeZoneInfo.FindSystemTimeZoneById("Jordan Standard Time");

// Static helper extension method to make local
public static DateTime ToLocal(this DateTime utcDateTime) {
    TimeZoneInfo tz = Session["TimeZone"];
    return TimeZoneInfo.ConvertTimeFromUtc( utcDateTime, tz );
}

// Use in ASP.NET page
<%= myDateTimeValue.ToLocal() %>
于 2012-06-20T08:00:19.310 に答える