有人能指出我的所有时区引用的id在TimeZoneInfo.FindTimeZoneById()的完整列表吗?我在任何地方都找不到一个列表,我已经查看了. net文档。


当前回答

您将在这里找到完整的时区列表及其GMToffsets,您可以使用“时区名称”列值按ID查找时区

e.g

TimeZoneInfo objTimeZoneInfo = TimeZoneInfo.FindTimeZoneById("Dateline Standard Time");

您将得到时区信息类,其中包含用于GMT-12:00的日期线标准时区。

其他回答

这是c#中的SelectListItem (asp .net)

你可以在后台写代码:

public static List<SelectListItem> GetTimezoneList()
{
    try
    {
        // list of timezone
        List<SelectListItem> timezoneList = new List<SelectListItem>();

        timezoneList.Add(new SelectListItem() { Value = "", Text = "Select TimeZone...", Selected = false });
                
        var timezoneInfo = TimeZoneInfo.GetSystemTimeZones();
                
        foreach (var item in timezoneInfo)
        {
            timezoneList.Add(new SelectListItem() 
            {
                Value = item.StandardName, Text = item.DisplayName, Selected = false });
            }
            return timezoneList;
        }
    }
    catch (Exception e)
    {
        throw e;
    }
}

在前端

@Html.DropDownListFor(s => s.TimeZone, YourbackendServiceName.GetTimezoneList(), new { @class = "form-control input-md" })

这将给你所有的时区DisplayName…即印度标准时间 下拉列表

时区标识符列表,默认包含在Windows XP和Vista中:查找本地系统上定义的时区

下面是微软提供的时区列表

您将在这里找到完整的时区列表及其GMToffsets,您可以使用“时区名称”列值按ID查找时区

e.g

TimeZoneInfo objTimeZoneInfo = TimeZoneInfo.FindTimeZoneById("Dateline Standard Time");

您将得到时区信息类,其中包含用于GMT-12:00的日期线标准时区。

这是你要找的链接:

c#系统时区id