2012-03-27 12 views
0

Wenn der Dateiname enthält # - Download von skydrive fehlschlägt. Genauer gesagt - Länge des Ergebnisses immer 0. Andere Dateien werden ohne Probleme geladen;seltsam Download-Fehler (wp7 + skydrive API)

Dank

Start Download:

if (!loading) { 
       if (!Storage.Exists(item.Name) 
        || MessageBox.Show(AppResources.alreadyExists, AppResources.confirmation, MessageBoxButton.OKCancel) == MessageBoxResult.OK) { 
        loading = true; 
        App.loadInfo.Name = item.Name; 
        App.loadInfo.Info = AppResources.loadingStart; 
        PhoneApplicationService.Current.UserIdleDetectionMode = IdleDetectionMode.Disa bled; 
        client.DownloadAsync(item.Id + CONTENT, item); 
       } 
      } 

Download abgeschlossen:

void client_DownloadCompleted(object sender, LiveDownloadCompletedEventArgs e) { 
     PhoneApplicationService.Current.UserIdleDetectionMode = IdleDetectionMode.Enabled; 
     try { 
      FileItem item = e.UserState as FileItem; 
      if (e.Error == null 
       && !e.Cancelled 
       && e.UserState != null 
       && item.Size == e.Result.Length.ToString()) //LENGTH = 0 { Storage.SaveFile(item.Name, e.Result); 
       App.loadInfo.Info = AppResources.loadingComplete; 
       new GetIcon(item._name); 
      } 
      else { 
       if (item != null) App.loadInfo.Name = item.Name; 
       App.loadInfo.Info = AppResources.loadingError; 
      } 
     } 
     finally { App.loadInfo.Progress = 0; loading = false; MakeUi(); } 
    } 

LiveDownloadProgressChangedEventArgs nicht

+1

Bitte posten Sie Ihre Lösung als Antwort, nicht als Bearbeitung der Frage. – ChrisF

Antwort

0

nicht entstehen, wenn dies wirklich der Fall ist, können Sie einfach die nicht abstreifen Fragmente aus dem URI, bevor Sie die Anfrage stellen?

+0

Anfrage URI nicht direkt mit Dateinamen. für Beispiel _client.DownloadAsync (file.e7982fae8124d253.E7982GFE8124D253! 146/Inhalt); _ aber ich bin bemerkt, dass in diesem Fall der Dateiname auf dem Server # ps enthält. Entschuldigung für mein Englisch – pbd