有人能指出我的所有时区引用的id在TimeZoneInfo.FindTimeZoneById()的完整列表吗?我在任何地方都找不到一个列表,我已经查看了. net文档。
当前回答
这是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…即印度标准时间 下拉列表
其他回答
这是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…即印度标准时间 下拉列表
从MSDN
ReadOnlyCollection<TimeZoneInfo> zones = TimeZoneInfo.GetSystemTimeZones();
Console.WriteLine("The local system has the following {0} time zones", zones.Count);
foreach (TimeZoneInfo zone in zones)
Console.WriteLine(zone.Id);
我知道这是一个老问题,但微软现在似乎已经通过MSDN提供了这一点。
http://msdn.microsoft.com/en-us/library/gg154758.aspx
您将在这里找到完整的时区列表及其GMToffsets,您可以使用“时区名称”列值按ID查找时区
e.g
TimeZoneInfo objTimeZoneInfo = TimeZoneInfo.FindTimeZoneById("Dateline Standard Time");
您将得到时区信息类,其中包含用于GMT-12:00的日期线标准时区。
DateTime dt;
TimeZoneInfo tzf;
tzf = TimeZoneInfo.FindSystemTimeZoneById("TimeZone String");
dt = TimeZoneInfo.ConvertTime(DateTime.Now, tzf);
lbltime.Text = dt.ToString();
推荐文章
- 将一个列表分成大约相等长度的N个部分
- 随机字符串生成器返回相同的字符串
- 为什么Func<T,bool>而不是Predicate<T>?
- .NET中的Map和Reduce
- 我如何能使一个组合框不可编辑的。net ?
- .NET反射的成本有多高?
- 实体框架回滚并移除不良迁移
- 将流转换为字符串并返回
- 在python中zip的逆函数是什么?
- 在c#中检查字符串是否只包含数字的最快方法
- IEquatable和重写Object.Equals()之间的区别是什么?
- 创建一个堆栈大小为默认值50倍的线程有什么危险?
- 转换JSON字符串到JSON对象c#
- 如何在元组列表中获得第一个元素?
- 显示两个datetime值之间的小时差值