Monotouch中EKEventStore中的时区问题

时间:2011-02-06 03:33:44

标签: c# iphone xamarin.ios

我将事件从日历中拉出来,并且在模拟器中它正确地提取日期和时间但是当部署到设备时,时区全部搞砸了。例如:

// Grab all events for the next 5 days
NSPredicate predicate = store.PredicateForEvents(DateTime.Now.AddDays(5),new EKCalendar[] {});
Events = store.EventsMatching(predicate);
foreach(EKEvent myevent in Events)
{
    Console.WriteLine("Event date: " + myevent.StartDate.ToString());
}

这将在模拟器上产生Event date: 2011-02-04 18:29:59 +0000(PST),但在iphone上将产生Event date: 2011-02-04 02:29:59 +0000,这也是在PST中。

我到处寻找这个,我似乎无法找到答案。

1 个答案:

答案 0 :(得分:0)

如果您先将它投射到DateTime,然后ToLocalTime,它将以当前当地时间为您提供日期。

((日期时间)myevent.StartDate).ToLocalTime()