blob存储空图像

时间:2018-02-07 12:46:55

标签: azure azure-storage-blobs

这是我尝试将图像上传到Azure博客存储,然后上传位于那里的空文件的方法。

Azure image 1

Info about Blob storage

我尝试在此处上传此图片:

CloudStorageAccount storageAccount = new CloudStorageAccount(new Microsoft.WindowsAzure.Storage.Auth.StorageCredentials(Accountname, KeyValue), true);
            // Create the blob client.
            CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient();

            // Retrieve a reference to a container.
            CloudBlobContainer container = blobClient.GetContainerReference(ContainerValue);

            CloudBlockBlob blockBlob = container.GetBlockBlobReference(filename);
            using (var f = System.IO.File.Open(model.FileToUpload.FileName, FileMode.Create))
            {
                await blockBlob.UploadFromStreamAsync(f);
            }

但如果我试图打开这张图片说出来。

error with image.从丹麦语到英语:我们无法打开此文件

1 个答案:

答案 0 :(得分:1)

正如Marco所说,FileMode.Create指定操作系统创建新文件。如果该文件已存在,则将覆盖。 有关详细信息,请参阅此article

根据您提供的图片,您的斑点大小 0 B 。所以,你总是找不到文件并打开它。 FileMode指定操作系统应如何打开文件。

所以我建议您删除它并使用 OpenRead 打开现有文件进行阅读。您可以参考以下代码:

using (var f = System.IO.File.OpenRead(model.FileToUpload.FileName))
            {
                await blockBlob.UploadFromStreamAsync(f);
            }