Я хотел бы получить файлы, хранящиеся в подкаталогах blob. Я попробовал приведенный ниже код, который он ищет, ищет все подкаталоги. Пожалуйста, дайте мне знать, что было сделано для просмотра конкретных подкаталогов.
var blobStorage = new BlobStorage<Documents>(Environment.GetEnvironmentVariable("AzureStorage"), "documents");
var itemCount = 0;
var maxItems = (31 * 100);
// Sub directories info 2024/Data/
await foreach (var data in blobStorage.GetBlobs())
{
// Get info here
itemCount++;
}
Я попробовал приведенный ниже код, который он ищет, ищет все подкаталоги. Пожалуйста, дайте мне знать, что было сделано для просмотра конкретных подкаталогов.
Чтобы получить список больших двоичных объектов из определенного каталога, вы можете использовать параметр prefix
, который фильтрует результаты и возвращает только те большие двоичные объекты, имя которых начинается с указанного префикса.
Код:
using Azure.Storage.Blobs;
using Azure.Storage.Blobs.Models;
using System;
namespace ListBlobsExample
{
class Program
{
static void Main(string[] args)
{
string connectionString = "Azure Storage Connection String";
string containerName = "test";
BlobServiceClient blobServiceClient = new BlobServiceClient(connectionString);
BlobContainerClient containerClient = blobServiceClient.GetBlobContainerClient(containerName);
// List blobs in the "2024/Data" subdirectory
string prefix = "sample/venkat1"; //eg:my subdirectory
foreach (BlobItem blobItem in containerClient.GetBlobs(prefix: prefix))
{
Console.WriteLine(blobItem.Name);
}
}
}
}
Выход:
sample/venkat1/demo.txt
sample/venkat1/file.csv
sample/venkat1/sample.pdf
sample/venkat1/sample.wav
sample/venkat1/samplecert.pfx
sample/venkat1/temp2.jpg
sample/venkat1/test.jpg