簡體   English   中英

有沒有辦法在 Azure.Storage.Blobs 中獲取 blob 的 ContentType?

[英]Is there a way to get a blob's ContentType in Azure.Storage.Blobs?

我正在切換到較新的 Azure.Storage.Blobs 並希望通過 API 將 blob 作為文件提供給客戶端。

在現已棄用的 Microsoft.Azure.Storage 和 Microsoft.Azure.Storage.Blob 中,我可以這樣做:

using Microsoft.Azure.Storage;
using Microsoft.Azure.Storage.Blob;

    CloudBlobClient cloudBlobClient = storageAccount.CreateCloudBlobClient();
    CloudBlobContainer container = cloudBlobClient.GetContainerReference("foo");
    CloudBlockBlob blob = container.GetBlockBlobReference(blobId);
    var bar = blob.Properties.ContentType;

現在我在 Azure.Storage.Blobs 中,設置看起來一樣,但我錯過了重點:

using Azure.Storage.Blobs;
    BlobContainerClient containerClient = new BlobContainerClient(storageConnectionString, containerName);
    BlobClient blobClient = containerClient.GetBlobClient("foo");

較新的庫中沒有類似的塊blob,我可以將 blobClient 讀入 stream,但是在不求助於舊庫的情況下,我從哪里獲得它的內容類型?

我希望能夠點擊 FileResult,返回與此簽名匹配的內容:

File(Stream fileStream, string contentType, string fileName);

您可以使用GetBlobProperties獲取 blob 的屬性,這將為您提供 blob 的內容類型。 類似(未經測試的代碼):

var getBlobPropertiesResult = blobClient.GetProperties();
var contentType = getBlobPropertiesResult.Value.ContentType;

暫無
暫無

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

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