是否可以在iCal.net上使用UTC Offset而不是时区名称?

时间:2016-12-26 13:02:17

标签: c# dday ical-dotnet

我的应用程序将UTC偏移量存储在用户配置文件中(例如-03:00),并且来自iCal.net Wiki的此页面提到我似乎只能使用时区来分配事件:{{3} }。

我还有其他选择吗?

1 个答案:

答案 0 :(得分:1)

ical.net使用NodaTime进行时区转换,这意味着您可以使用Etc/GMT系列区域。维基百科有a nice list。在您的情况下,您应指定Etc/GMT-3的时区:

const string ianaZone = "Etc/GMT-3";
var start = DateTime.Now;
var end = start.AddHours(1);

var vEvent = new Event
{
    DtStart = new CalDateTime(start, ianaZone),
    DtEnd = new CalDateTime(end, ianaZone),
};