Télécharger le Fichier à partir d'Azure Blob Storage
J'ai une application qui permet aux utilisateurs de télécharger des photos, qui sont stockés dans Azure Blob Storage. L'utilisateur a également la possibilité de visualiser ces photos. Pour les voir, nous voulons l'application pour télécharger l'image à l'emplacement de téléchargement par défaut. Pour le moment, le téléchargement fonctionne parfaitement. Mais la fonction de téléchargement que j'ai trouvé pour Azure API ne semble pas faire quoi que ce soit. Aussi, je ne peux pas vraiment préciser un emplacement de téléchargement, car cette fonctionnalité doit travailler sur des ordinateurs de bureau/ordinateurs portables ainsi que sur des appareils mobiles qui ont des répertoires par défaut.
Cela semble comme il devrait être simple mais je ne trouve rien pour m'aider.
Voici un exemple de mon code:
CloudBlobContainer container = blobClient.GetContainerReference("photos");
CloudBlob blob = container.GetBlobReference(photo.BlobUrl);
//copy blob from cloud to local gallery
blob.DownloadToFile(photo.ImageName);
La blob.DownloadToFile(photo.ImageName);
provoque une demande de serveur mais rien ne se passe, aka pas de fichier est téléchargé.
- pas de référence pour la "photo" de l'objet ?
Vous devez vous connecter pour publier un commentaire.
Une raison quelconque vous ne pouvez pas demander au client de télécharger le fichier directement à partir du stockage blob et utiliser le navigateur intégré de la capacité à les sauver? Si les fichiers sont privés, il est assez facile de générer un SAS signature. Cela permettra de décharger le télécharger via votre serveur et supprimer que les frais généraux.
Ici:
Vous avez besoin de lui dire où enregistrer le fichier et le nom que vous voulez qu'il soit:
Vous pouvez utiliser le Système.De l'environnement.SpecialFolder enum pour comprendre le dossier basé sur le système actuel, puis ajoutez ce que vous voulez le nom de l'image à l'être;
Voici un exemple plus complet:
Cela permettrait d'enregistrer l'image dans le bon chemin où le bureau de l'utilisateur d'annuaire est. Voici la documentation de cette enum pour les dossiers spéciaux.
http://msdn.microsoft.com/en-us/library/system.environment.specialfolder.aspx
Je me demande ce qu'attendez-vous de ce code, mais surtout dans le cas de la plate-forme différente cela ne fonctionnerait pas. Je vous suggère d'utiliser le DownloadToStream méthode à la place. Ensuite, vous pouvez décider quoi faire avec le cours d'eau. Par exemple, demander à l'utilisateur l'endroit où il souhaitez enregistrer le fichier.