我尝试使用https://code.msdn.microsoft.com/Office-365-APIs-Windows-8-63a74ba2上提供的客户端库运行Windows 8应用示例,但是我收到了以下错误。
“值不能为null。参数名称:serviceContext”
私有异步任务EnsureClientCreated() {
var authenticator = new Authenticator();
var result = await authenticator.AuthenticateAsync("MyFiles", ServiceIdentifierKind.Capability);
// Create a client proxy:
this.client = new SharePointClient(result.ServiceUri, result.GetAccessToken);
this.client.Context.IgnoreMissingProperties = true;
}
/// <summary>
/// Populates the page with content passed during navigation. Any saved state is also
/// provided when recreating a page from a prior session.
/// </summary>
/// <param name="sender">
/// The source of the event; typically <see cref="NavigationHelper"/>
/// </param>
/// <param name="e">Event data that provides both the navigation parameter passed to
/// <see cref="Frame.Navigate(Type, Object)"/> when this page was initially requested and
/// a dictionary of state preserved by this page during an earlier
/// session. The state will be null the first time a page is visited.</param>
private async void navigationHelper_LoadState(object sender, LoadStateEventArgs e)
{
Exception exception = null;
try
{
this.DefaultViewModel["Items"] = new[] { new { Primary = "Loading...", Secondary = "Please wait..." } };
IOrderedEnumerable<IFileSystemItem> files = await GetOneDriveFiles();
if (files == null)
{
this.DefaultViewModel["Items"] = null;
}
else
{
this.DefaultViewModel["Items"] = files.Select(file => new
{
Primary = file.Name,
Secondary = "Last modified on " + ToLocalTimeString(file.TimeLastModified)
});
}
}
catch (Exception ex)
{
exception = ex;
}
if (exception != null)
{
await ShowErrorMessageAsync(exception.Message);
}
}
private async Task<IOrderedEnumerable<IFileSystemItem>> GetOneDriveFiles()
{
await EnsureClientCreated();
// Obtain data:
var filesRequest = await this.client.Files["Shared with Everyone"].ToFolder().Children.ExecuteAsync();
var files = filesRequest.CurrentPage.OrderBy(e => e.Name);
return files;
}
任何想法?
答案 0 :(得分:0)
您可以尝试使用可在此处找到的当前工具版本:http://aka.ms/office365apitoolspreview 如果这不能解决问题,那么查看导致问题的特定API调用的HTTP跟踪将会很有帮助。