获取特定时间范围内的事件
Get events of a specific time range
我正在使用 Office365 Outlook 日历 API。我需要获取特定时间范围内的事件。我试图比较 foreach 命令中的 DateTimeTimeZone 值,但它似乎只支持 == 运算符:
if ( calendarEvent.Start >= new DateTimeTimeZone()
{
TimeZone = TimeZoneInfo.Local.Id,
DateTime = DateTime.Now.ToString("s")
})
此代码片段失败并出现错误:无法将运算符“>=”应用于 'Microsoft.Office365.OutlookServices.DateTimeTimeZone' 和 'Microsoft.Office365.OutlookServices.DateTimeTimeZone'
类型的操作数
是否有任何其他方式获取特定时间范围内的事件,例如未来的事件?
到目前为止,这是我的 GetEvents() 方法:
[Route("GetEvents")]
public async Task GetEvents()
{
//Get client
OutlookServicesClient client = await this.GetClient();
//Get events
var events = await client.Me.Events
.Take(10)
.ExecuteAsync();
foreach (var calendarEvent in events.CurrentPage)
{
//
if ( calendarEvent.Subject == "Test 1" )
{
System.Diagnostics.Debug.WriteLine("Event '{0}'.", calendarEvent.Subject) ;
}
}
}
您应该使用 CalendarView
获取时间范围内的事件。
DateTimeOffset startDateTime, endDateTime;
var events = client.Me.GetCalendarView(startDateTime, endDateTime);
我正在使用 Office365 Outlook 日历 API。我需要获取特定时间范围内的事件。我试图比较 foreach 命令中的 DateTimeTimeZone 值,但它似乎只支持 == 运算符:
if ( calendarEvent.Start >= new DateTimeTimeZone()
{
TimeZone = TimeZoneInfo.Local.Id,
DateTime = DateTime.Now.ToString("s")
})
此代码片段失败并出现错误:无法将运算符“>=”应用于 'Microsoft.Office365.OutlookServices.DateTimeTimeZone' 和 'Microsoft.Office365.OutlookServices.DateTimeTimeZone'
类型的操作数是否有任何其他方式获取特定时间范围内的事件,例如未来的事件?
到目前为止,这是我的 GetEvents() 方法:
[Route("GetEvents")]
public async Task GetEvents()
{
//Get client
OutlookServicesClient client = await this.GetClient();
//Get events
var events = await client.Me.Events
.Take(10)
.ExecuteAsync();
foreach (var calendarEvent in events.CurrentPage)
{
//
if ( calendarEvent.Subject == "Test 1" )
{
System.Diagnostics.Debug.WriteLine("Event '{0}'.", calendarEvent.Subject) ;
}
}
}
您应该使用 CalendarView
获取时间范围内的事件。
DateTimeOffset startDateTime, endDateTime;
var events = client.Me.GetCalendarView(startDateTime, endDateTime);