0

我正在嘗試使用Azure存儲SDK並試圖確定是否有方法可以指定容器並查找其包含的斑點數。我迄今爲止看到的帖子只提到用blob的名稱進行檢查,這不符合我的需要。Azure Blob存儲 - 如何確定指定的容器是否包含任何Blob?

如果我做到以下幾點:

CloudBlobContainer blobContainer = blobClient.GetContainerReference("my-container"); 
var blobCount = blobContainer.ListBlobs().Count(); 

然後我打了HTTP 404異常。

有什麼辦法可以解決這個問題嗎?

+0

我在想你爲什麼得到HTTP 404異常。代碼應該運行良好。你能在這裏粘貼StorageException.ToString()的值嗎? –

回答

0

您可以通過使用此代碼檢查計數:

CloudBlobContainer blobContainer = blobClient.GetContainerReference("my-container"); 
blobContainer.FetchAttributes(); 
string count = blobContainer.Metadata["ItemCount"]; 
int ItemCount; 
if(int.Tryparse(count ,out ItemCount)) 
{ 
    if(ItemCount>0) 
    // Container is not Empty 
    else 
    // Container is Empty 
} 
else 
{ 
    // Conversion failed; 
} 
+0

不幸的是,blobContainer.FetchAttributes()行不返回任何內容。元數據字典返回空白。 – RizJa

+0

是指定的容器是空的嗎? –