2

Je suis en train d'enregistrer un fichier XML à un conteneur non CDN de Sydney:OpenStack Rackspace Cloud File SDK .net

public void Save(XDocument document) 
{ 
    using (MemoryStream ms = new MemoryStream()) 
    { 
     document.Save(ms); 
     ms.Position = 0; 

     RackspaceCloudIdentity identity = new RackspaceCloudIdentity { Username = "username", APIKey = "xxxxxxxxxxx", CloudInstance = CloudInstance.Default }; 
     CloudFilesProvider provider = new CloudFilesProvider(identity); 

     provider.CreateObject("XMLFiles", ms, "xmlFile1.xml", region: "syd"); 
    } 
} 

Pour un fichier de 1 Mo, il faut environ 50 secondes pour télécharger (très long).

Et, en essayant de télécharger le fichier en arrière, retourne un résultat vide:

public void Read() 
{ 
    RackspaceCloudIdentity identity = new RackspaceCloudIdentity { Username = "username", APIKey = "xxxxxxxxxxx", CloudInstance = CloudInstance.Default }; 
    CloudFilesProvider provider = new CloudFilesProvider(identity); 

    using (MemoryStream ms = new MemoryStream()) 
    { 
     provider.GetObject("XMLFiles", "xmlFile1.xml", ms, region: "syd"); 

     // ms.Length is 0 
    } 
} 

que je fais quelque chose de mal?

Répondre

1

Ugh. J'ai introduit ce bogue dans le commit 799f37c (d'abord publié dans la version 1.1.3.0). Je suis en train de chercher la meilleure solution pour le moment.

Edit: Il n'y a pas de solution, mais je déposé issue #116 pour la question, et après la pull request car il est fusionné, nous allons publier la version 1.1.3.1 de la bibliothèque pour corriger le problème.

1

Etes-vous en mesure d'accéder à votre panneau de contrôle sur mycloud.rackspace.com?

J'ai utilisé mon panneau de contrôle pour télécharger un fichier XML, puis j'ai utilisé le code ci-dessus pour télécharger le fichier XML. Cela a bien fonctionné.

Je vais maintenant utiliser le code de téléchargement que vous avez posté.

Je voulais juste que vous sachiez que je suis à la recherche.

+0

Oh. Donc, MINE fonctionne parce que j'utilise une construction légèrement plus ancienne (pré-799f37c) (voir le commentaire de 280Z28, ci-dessous). – user2195538

Questions connexes