ため
おかげで、Cookieまたはデータベースに、あなたが2つの値を格納する必要が私たちのためにオプションではありませんi18n(国際化)のお手伝いをしてください。何かをフォーマットする必要があるときは、この2つのクラスのC#を使用してください:TimeZoneInfoとCultureInfoの場合は、最初に国のタイムゾーンが必要で、2番目にタイムゾーンが必要です(TimeZoneInfo.GetSystemTimeZones()
ですべてのタイムゾーンが表示されます。次に、このクラスを使用してテキストをフォーマットします)。
例:
var dateTime = TimeZoneInfo.ConvertTimeFromUtc(client.ActivatedOn.Value.UtcDateTime, timeZoneInfo);
そして、(例えば)ビュー内:
あなたがなります。これにより
@dateTime.ToString("G", cultureInfo)
var timeZoneInfo = string.IsNullOrEmpty(Settings.CountryTimezone) ?
TimeZoneInfo.Local :
TimeZoneInfo.FindSystemTimeZoneById(Settings.CountryTimezone);
var cultureInfo = string.IsNullOrEmpty(Settings.CountryCulture) ?
CultureInfo.CurrentCulture :
CultureInfo.GetCultureInfo(Settings.CountryCulture);
その後、あなたは、これがこのようなオブジェクトを使用ユーザーには正しい日付だけでなく(国の夏時間にもかかわらず)、ローカル形式で表示されます。
私には「システム時間はUTCに設定されています」とは、UTC *が現地時間であることを意味します* - あなたが探している他の現地時間は?また、 "IIS"はやや奇妙なタグです - これは "これはカスタム非AS.NetフレームワークのWebサーバーコードです"ということを意味するかもしれません - あなたは[編集]してそのことを明確にしたいかもしれません。 –