2013-07-08 80 views
0

我試圖做一個控制檯應用程序訪問我的SkyDrive帳戶,但我無法弄清楚如何讓Live SDK工作。您可以使用控制檯應用程序中的LiveSDK嗎?

我活SDK 5.4版本上運行,這是我試圖運行的代碼 - 的loginResult.Status始終是「未知」:

private static async Task<LiveConnectClient> ConnectToLive() 
{ 
    LiveAuthClient authClient = new LiveAuthClient("my live ID"); 

    var loginResult = await authClient.IntializeAsync(new[] { "wl.basic" }); 
    if (loginResult.Status == LiveConnectSessionStatus.Connected) 
     return new LiveConnectClient(loginResult.Session); 
    return null; 
} 

有幾件事情我不能肯定有關(因爲SDK文檔是有點乏善可陳最好):

  1. 「我活ID」 - 是用於我個人的Live帳戶這只是我的電子郵件地址,或者是某種特定應用的ID你必須創造一個地方?

  2. Is InitializeAsync是調用身份驗證的正確方法嗎?我發現的所有示例都提到了「LoginAsync」,但該方法在DLL中不可用。

  3. 甚至可以在Windows Phone/Metro應用程序之外使用SDK嗎?

+0

嗨斯特芬下載的SkyDriveClient工作, 你找到一個答案,因爲我有同樣的問題? LiveSDK中的示例顯示如何獲取ClientID,並且可以運行該示例(對於我來說它就是桌面ApiExplorer)。但登錄彈出一個登錄窗口 – jradxl

回答

0

我得到了下面的代碼使用從http://skydriveapiclient.codeplex.com/releases/view/103081

static void Main(string[] args) 
    { 
     var client = new SkyDriveServiceClient(); 

     client.LogOn("[email protected]", "password"); 
     WebFolderInfo wfInfo = new WebFolderInfo(); 

     WebFolderInfo[] wfInfoArray = client.ListRootWebFolders(); 

     wfInfo = wfInfoArray[0]; 
     client.Timeout = 1000000000; 

     string fn = @"test.txt"; 
     if (File.Exists(fn)) 
     { 
      client.UploadWebFile(fn, wfInfo); 
     } 

    } 
相關問題