我正在尝试一次获取CloudBlobDirectory上的图像大小,而不用C#代码迭代List,因为迭代需要花费一些时间来加载页面。
我已经在网上搜索过,但是所有代码都通过列表迭代显示。
if (cloudBlobContainer.Exists() == true)
{
CloudBlobDirectory folder = cloudBlobContainer.GetDirectoryReference(Subcontainer);
foreach (var blobItem in folder.ListBlobs())
{
try
{
var blob = blobItem as CloudBlockBlob;
if (blob != null)
filesize += blob.Properties.Length;
}
catch { continue; }
}
}
时间只在考虑它应该在2-3秒内返回大量图像,以显示Azure存储空间的占用量。
答案 0 :(得分:0)
如果只关心时间,请将“长度”保存到某个地方(数据库或文件)。
如果要控制上传到Blob,请在上传时保存文件长度。如果不是,请在特定时间段(例如每5分钟运行一次)扫描程序并保存文件的长度。
答案 1 :(得分:0)
否,您必须列出斑点并计算总大小。