适用于Windows Phone的LiveSDK(LiveConnect Api)或SkyDrive Api

时间:2011-12-15 03:48:49

标签: c# windows-phone-7

我不确定哪个程序集是用于Windows Phone的正确程序集。以下网址显示了使用LiveSDK的示例。

http://nikovrdoljak.wordpress.com/2011/09/15/backup-your-windows-phone-isolated-storage-data-to-skydrive-using-live-connect-api/

我为参考文献添加了Microsoft.LiveMicrosoft.Live.Control

代码:

client.Session.Status != LiveConnectSessionStatus.Connected

错误:

'Microsoft.Live.LiveConnectSession' does not contain a definition for 'Status'
and no extension method 'Status' accepting a first argument of type 'Microsoft.Live.LiveConnectSession'
could be found (are you missing a using directive or an assembly reference?)

代码:

private LiveConnectClient client;
private void UploadPhoto_Click(object sender, EventArgs e)
{
    if (client == null || client.Session == null || client.Session.Status != LiveConnectSessionStatus.Connected)
    {
        MessageBox.Show("You must sign in first.");
    }
    else
    {
        client.GetCompleted += new EventHandler<LiveOperationCompletedEventArgs>(GetFolderProperties_Completed);
        // If you put photo to folder it becomes album.
        client.GetAsync("me/skydrive/files?filter=folders,albums");
    }
}

2 个答案:

答案 0 :(得分:1)

所以很明显LiveConnectSession没有Status属性。你为什么一直认为它有呢?

在示例代码中,他使用Status类的LiveConnectSessionChangedEventArgs属性,而不是LiveConnectSession

重新阅读基础知识的建议似乎在这里。

答案 1 :(得分:0)

Live SDk包含SignIn按钮和LiveConnet DLL。要连接到SKyDrive,需要使用SignIn Button登录。连接后,您可以使用返回会话创建LiveConnectClient。在执行任何任务之前检查会话是否仍然存在是一种很好的做法。网盘。