Я пытаюсь использовать хранилище Windows Azure для своего приложения Магазина Windows с мобильными службами для хранения изображений. Я сделал загрузку, следуя этому руководству:
http://www.windowsazure.com/en-us/develop/mobile/tutorials/upload-images-to-storage-dotnet/
Однако я не смог найти никаких материалов по загрузке файлов. Я даже не смог найти ссылку на классы для версии магазина Windows! Если кто-то может направить меня к документации, я был бы признателен.
Во всяком случае, я написал код, но он не работает:
public static async System.Threading.Tasks.Task DownloadUserImage(SQLUser userData)
{
var usersFolder = await GetUsersFolder();
var imageUri = new Uri(userData.ImageUri);
var accountName = "<SNIP>";
var key = "<SNIP>";
StorageCredentials cred = new StorageCredentials(accountName, key);
CloudBlobContainer container = new CloudBlobContainer(new Uri(string.Format("https://{0}/{1}", imageUri.Host, userData.ContainerName)), cred);
CloudBlockBlob blob = container.GetBlockBlobReference(userData.ResourceName);
var imageFile = await usersFolder.CreateFileAsync(userData.Id.ToString() + ".jpg", CreationCollisionOption.ReplaceExisting);
using (var fileStream = await imageFile.OpenAsync(FileAccessMode.ReadWrite))
{
try
{
await blob.DownloadToStreamAsync(fileStream);
}
catch (Exception e)
{
Tools.HandleLiveException(e);
}
}
}
Этот код приводит к созданию пустого файла, но не создает никаких исключений. Если я вставлю значение imageUri в свой браузер, он начнет загрузку файла и успешно завершит загрузку. Однако моя программа почему-то этого не делает.
Любая помощь, пожалуйста?