我正在尝试从我的代码中访问skydrive内容。以下代码之前有效但突然停止执行第二个结果。不确定微软在后面做了什么!请帮忙。请注意,范围无效,我的win8应用程序可以访问。
var authClient = new LiveAuthClient();
var scopes = new[] { "wl.signin", "wl.skydrive", "wl.basic" };
Task<LiveLoginResult> resultTask = authClient.LoginAsync(scopes);
var client = new LiveConnectClient(resultTask.Result.Session);
dynamic result1 = client.GetAsync("me/skydrive");
dynamic result2 = result1.Result;
result1 = client.GetAsync("me/skydrive");
result2 = result1.Result;
由于 Kajal
答案 0 :(得分:2)
您的代码缺少异步/等待。
如果您的代码位于事件正文中,则使用async void
作为返回类型,否则使用async Task<T>
其中T
类型返回类型数据。
var authClient = new LiveAuthClient();
var scopes = new [] {“wl.signin”,“wl.skydrive”,“wl.basic”};
任务resultTask = 等待 authClient.LoginAsync(范围);
var client = new LiveConnectClient(resultTask.Result.Session);
动态result1 = 等待 client.GetAsync(“me / skydrive”);
动态结果2 = result1.Result;
result1 = 等待 client.GetAsync(“me / skydrive”);
result2 = result1.Result;