【问题标题】:Remember user selection of TimeZoneInfo in a cookie, property to use from C#?还记得用户在 cookie 中选择 TimeZoneInfo,从 C# 中使用的属性吗?
【发布时间】:2012-07-22 11:07:59
【问题描述】:

我有一个 DropDownList 控件,其中填充了来自调用的 TimeZones:

ReadOnlyCollection<TimeZoneInfo> tzCollection;
tzCollection = TimeZoneInfo.GetSystemTimeZones();

现在我想添加一个选项来记住持久 cookie 中以前的用户选择,但我不知道要使用哪个参数:我想使用与 GMT/UTC 的时间偏移,但可能有列表中具有相同偏移量的多个时区。并且使用 TimeZoneInfo.Id 属性对我来说似乎也很糟糕,因为它由诸如“太平洋标准时间”之类的描述性字符串表示,这可能会给本地化带来问题(如果是外语)。

那么有什么建议我应该使用什么?

【问题讨论】:

    标签: c# asp.net timezone


    【解决方案1】:

    TimeZoneInfo.Id 正是要使用的值。然后您可以使用TimeZoneInfo.FindSystemTimeZoneById 获取它。

    尽管它看起来像一个可本地化的字符串,但实际上并非如此——我相信无论你使用什么文化,你都会得到相同的结果。 (说实话还不清楚 - 我发现很难说服任何属性在测试程序中给出非英语结果。)

    【讨论】:

    • 谢谢,乔恩。从不相关的角度来看——有没有办法获得特定文化的时区名称?
    • @ahmd0:我不知道,恐怕 - 我在 API 中看不到任何东西 :(
    猜你喜欢
    • 2013-07-27
    • 1970-01-01
    • 1970-01-01
    • 2017-09-12
    • 2012-12-17
    • 2013-07-14
    • 2012-04-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多