C# Azure容器中所有文件夹的blob总数

C# Azure容器中所有文件夹的blob总数,c#,azure,azure-functions,C#,Azure,Azure Functions,我有一个蓝色的容器。 里面有5000多个文件夹。 每个文件夹都有近百万个以上的blob 存储资源管理器/文件夹统计信息花费的时间太长 我希望以编程方式(c#)计算每个文件夹中的所有blob。 这是否可行? 请导游。 谢谢。在Powershell下面,我曾经用特定的时间戳检查blob中的所有文件,并生成存储空间的excel报告。 类似的概念可以应用于所有容器的外部循环 ## Declaring the variables $number_of_days_threshold = 0 $cur

我有一个蓝色的容器。 里面有5000多个文件夹。 每个文件夹都有近百万个以上的blob

存储资源管理器/文件夹统计信息花费的时间太长

我希望以编程方式(c#)计算每个文件夹中的所有blob。 这是否可行? 请导游。
谢谢。

在Powershell下面,我曾经用特定的时间戳检查blob中的所有文件,并生成存储空间的excel报告。 类似的概念可以应用于所有容器的外部循环

    ## Declaring the variables
$number_of_days_threshold = 0
$current_date = get-date
$date_before_blobs = $current_date.AddDays(-$number_of_days_threshold)

## Storage account details
$storage_account_name = XXXXXXXXXXXXXXXX
$storage_account_key = "XXXXXXXXXXXXXXXXXXXXXXXXXX"
$container = "XXXXXXXXXXXXXXXXXXX"

## Creating Storage context for Source, destination and log storage accounts
$context = New-AzureStorageContext -StorageAccountName $storage_account_name -StorageAccountKey $storage_account_key
$blob_list = Get-AzureStorageBlob -Context $context -Container $container
$output = @()

## Iterate through each blob
foreach($blob_iterator in $blob_list){
   $blob_date = [datetime]$blob_iterator.LastModified.UtcDateTime 
   if($blob_date -le $date_before_blobs) {
   # $blob_iterator | %{$_.ICloudBlob.BreakLease()}
   # Remove-AzureStorageBlob -Container $container -Blob $blob_iterator.Name -Context $context
   $customObject = new-object PSObject -property @{
      "Name" = $blob_iterator.Name
      "LastModified" = $blob_iterator.LastModified
      "Length" = ($blob_iterator.Length)
   }
  $output += $customObject
   }
}
$output | Select `
     Name,
     LastModified,
     Length | export-csv -Path 'F:XXXXXXXXXXXXXXXXX.csv' -NoTypeInformation

我不知道所提供的解决方案的性能有多好,但我通常喜欢使用data factory来处理这些类型的情况,在这些情况下,您需要一些非常长时间运行且涉及大量数据