gpt4 book ai didi

c# - 如何使用 C# 列出 azure blob 存储中的前 100 个 blob

转载 作者:行者123 更新时间:2023-11-30 23:09:05 26 4
gpt4 key购买 nike

我正在使用这段代码并且可以获得结果,但不认为这是正确的方法

CloudBlobDirectory blobDirectory = 
container.GetDirectoryReference(blobDirectoryReference);

IEnumerable<IListBlobItem> blobList =
blobDirectory.ListBlobs(useFlatBlobListing:true,
blobListingDetails:BlobListingDetails.Metadata)
.OfType<CloudBlockBlob>()
.OrderByDescending(m=>m.Properties.LastModified).Take(100);

最佳答案

这是正确的,它没有获得服务器端的前 100 名。为此,您需要 ListBlobsSegmented方法。

最简单的情况是这样的:

IEnumerable<IListBlobItem> blobList = container.ListBlobsSegmented(string.Empty, true,
BlobListingDetails.Metadata, 100, null, null, null).Results
.OfType<CloudBlockBlob>()
.OrderByDescending(m => m.Properties.LastModified);

您可以将查询拆分为较小的 block ,然后使用 BlobContinuationToken迭代 block 。请查看我在这篇文章中提供的文档以了解所有选项。

但请注意,无法在服务器端对结果进行排序。它只会对您检索的 block 进行排序,并且仅在客户端进行排序。

关于c# - 如何使用 C# 列出 azure blob 存储中的前 100 个 blob,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46042604/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com