基本上,我在 Office 365 中的知识水平处于初级水平。
我正在尝试通过 .Net Office 365 API 调用从 Office 365 中提取约会并将其显示在 Windows 应用程序网格中。
我正在使用代码(如下)来拉约会;我从网上收集了代码...
我已经成功直到认证部分。我可以查看身份验证成功消息和 Office 365 日历属性等FromTime
。Location
但我无法接收数据。它返回System.Nullable DateTime Exception
。
namespace GetCal
{
public class CalendarAPISample
{
const string ExchangeResourceId = "https://outlook.office365.com";
const string ExchangeServiceRoot = "https://outlook.office365.com/ews/odata";
public static async Task<IOrderedEnumerable<IEvent>> GetCalendarEvents()
{
var client = await EnsureClientCreated();
string fromdate = "01/01/2014";
DateTime datet = Convert.ToDateTime(fromdate);
// Obtain calendar event data
var eventsResults = await(from i in client.Me.Events
where i.End >= datet //DateTimeOffset.UtcNow
select i).Take(10).ExecuteAsync();
var events = eventsResults.CurrentPage.OrderBy(e => e.Start);
//return events.ToList().ConvertAll(new Converter(ent => ent));
return events;
}
private static async Task<ExchangeClient> EnsureClientCreated()
{
Authenticator authenticator = new Authenticator();
var authInfo = await authenticator.AuthenticateAsync(ExchangeResourceId);
return new ExchangeClient(new Uri(ExchangeServiceRoot), authInfo.GetAccessToken);
}
public static async Task SignOut()
{
await new Authenticator().LogoutAsync();
}
public CalendarAPISample()
{
// TODO: Complete member initialization
try
{
// call the authenticator
var x = GetCalendarEvents();
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
}
}
在EVENTS对象中包含IEnumerable
数据类型值。我想转换IEnumerable
为DataTable
.