簡體   English   中英

使用ASP.NET中的File Uploader將圖像上傳到Azure Blob?

[英]Uploading Image to Azure Blob using File Uploader in ASP.NET?

我需要允許用戶指定需要上傳到Azure DB的圖像,而不是像所有教程那樣對Image Path進行硬編碼。 這是我到目前為止:

<asp:FileUpload ID="imageUploader" runat="server" />
<asp:Button ID="uploadBtn" runat="server" Text="Upload Image" class="btn btn-success btn-sm" OnClick="uploadBtn_Click" />

碼:

CloudStorageAccount storageAccount = CloudStorageAccount.Parse(ConfigurationManager.AppSettings["StorageConnectionString"]);
CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient();

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

// Create the container if it doesn't already exist.
container.CreateIfNotExists();
container.SetPermissions(new BlobContainerPermissions
{
        PublicAccess = BlobContainerPublicAccessType.Blob
});

CloudBlockBlob blockBlob = container.GetBlockBlobReference("myblob");

blockBlob.UploadFromFile(imageUploader.PostedFile.FileName, FileMode.Open);

然而,這似乎不起作用。 如何使用ASP.NET中的File Uploader將圖像上傳到azure?

您的UploadFromFile使用了錯誤的參數。 請參閱Microsoft CloudBlockBlob.UploadFromFile 第一個參數應該是文件路徑,即C:\\Users\\etc...而不僅僅是您正在解析imageUploader.PostedFile.FileName的文件的名稱。

你很可能想要像這樣使用UploadFromStream

blockBlob.UploadFromStream(imageUploader.PostedFile.InputStream);

您應該查看CloudBlockBlob的文檔,因為有許多不同的上傳方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM