2013-12-24 1 views
0

В основном у меня возникла эта проблема. Поэтому я создал папку в skydrive из своего приложения, и я хочу загрузить текстовый файл в эту папку, но это просто не позволяет мне. Bascailly единственный способ загрузить текстовый файл, если я установил местоположение в «me/skydrive». Я не хочу, чтобы текстовый файл загружался в папку на SkyDrive под названием «Pencil Notes».WP8 - API SkyDrive Загрузка файлов ошибка (нераскрытая)

Мой код Су далеко:

Dim myIsolatedStorage As IsolatedStorageFile = IsolatedStorageFile.GetUserStoreForApplication() 
    Dim mp1 = TryCast(App.RootFrame.Content, MainMenu) 
    Dim dataSource As New List(Of SampleData1)() 
    Dim data = TryCast(ItemsListSkyDrive.SelectedItem, SampleData1) 

    Dim writeFile As New StreamWriter(New IsolatedStorageFileStream("/shared/transfers/" & data.Name & ".txt", FileMode.Create, myIsolatedStorage)) 
    Dim Title As String = data.Name 
    Dim Message As String = data.Description 
    writeFile.WriteLine(Title) 
    writeFile.WriteLine(Message) 
    writeFile.Close() 

    Dim store1 As IsolatedStorageFile = IsolatedStorageFile.GetUserStoreForApplication() 
    Using store As IsolatedStorageFile = IsolatedStorageFile.GetUserStoreForApplication() 
     Try 
      Dim res As LiveOperationResult = Await client.BackgroundUploadAsync("me/skydrive/Pencil Notes", New Uri("/shared/transfers/" & data.Name & ".txt", UriKind.Relative), OverwriteOption.Overwrite) 
      MessageBox.Show("Done", "", MessageBoxButton.OK) 
      store1.DeleteFile("/shared/transfers/" & data.Name & ".txt") 
     Catch ex As Exception 
      MessageBox.Show(ex.Message, "", MessageBoxButton.OK) 
     End Try 
    End Using 
+0

Я отправил ответ, что это поможет вы .... на самом деле я предоставляю код в C#, но вы можете использовать в своем коде –

ответ

0

Это событие PostCompleted использовать, чтобы загрузить файлы в SkyDrive:

client.PostCompleted += 
         new EventHandler<LiveOperationCompletedEventArgs>(CreateMyFolder_Completed); 
void CreateMyFolder_Completed(object sender, LiveOperationCompletedEventArgs e) 
     { 
      if (e.Error == null) 
      { 
       string folderID = (e.Result["id"]).ToString(); 
       foreach (string item in names) 
       { 
        using (IsolatedStorageFile store = IsolatedStorageFile.GetUserStoreForApplication()) 
        { 
         string filename = item; 
         if (store.FileExists(filename)) 
         { 
          IsolatedStorageFileStream storeStream = store.OpenFile(filename, FileMode.Open, FileAccess.Read); 
          client.UploadAsync(folderID, filename, storeStream, OverwriteOption.Overwrite); 

         }       
        } 
       } 
      } 

Это поможет вам

+0

Спасибо за это, но я не работал :(Не было никакого события LiveOperationCompleted. Любой другой способ? –

+0

w hich sdk или dll, которые вы используете для этого. –

+0

Я использую последнюю версию Live SDK. Все, что мне нужно сделать, это убедиться, что файл загружен в созданную папку. Ничего больше. Это довольно странно, но как его можно загрузить в папку SkyDrive, но не подпапки. –