[英]how to list the 5 oldest blobs in a container
我希望能夠列出容器中5個最舊的Blob。
我正在創建一個客戶端:
CloudStorageAccount.TryParse(connection, out CloudStorageAccount storageAccount);
var blobClient = storageAccount.CreateCloudBlobClient();
在這一步,我需要獲取5個最舊的Blob,以便將其復制到其他容器中。
我們如何列出容器中最古老的5個斑點?
如@Davidg所述,您可以在LastModified
日期使用OrderByDescending
,但是它將掃描所有文件。
CloudBlobContainer rootContainer = blobClient.GetContainerReference("sample");
CloudBlobDirectory dir1;
var items = rootContainer.ListBlobs(id + "/someData/" + somedataid.ToString() + "/", false);
foreach (var blob in items.OfType<CloudBlob>()
.OrderByDescending(b => b.Properties.LastModified).Skip(1000).Take(500))
{
}
由於此操作將耗時且成本高昂,因此我建議您根據需要存儲Blob信息,例如BlobName,Blob Url和Last Modified Date等。
這樣,您將可以選擇對其執行任何操作。
希望能幫助到你。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.