Ich möchte alle Blobs aus einem Unterverzeichnis beispielsweise images/nature
in einem Speicherkonto auflisten. Ich benutze diesen C # -Code, um mein Ziel zu erreichen:
string storageConnectionString = Environment.GetEnvironmentVariable("BlobConnection", EnvironmentVariableTarget.Process);
CloudStorageAccount storageAccount = CloudStorageAccount.Parse(storageConnectionString);
CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient();
CloudBlobContainer container = blobClient.GetContainerReference(@"images/nature");
Dieser Code funktioniert bei mir nicht. Hast du eine Idee, wie kann ich diesen Job machen?
Der folgende Code funktioniert einwandfrei, wenn sich alle Blobs im Stammordner befinden:
string storageConnectionString = Environment.GetEnvironmentVariable("BlobConnection", EnvironmentVariableTarget.Process);
CloudStorageAccount storageAccount = CloudStorageAccount.Parse(storageConnectionString);
CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient();
CloudBlobContainer container = blobClient.GetContainerReference(@"images");
Bitte versuchen Sie den folgenden Code:
string storageConnectionString = Environment.GetEnvironmentVariable("BlobConnection", EnvironmentVariableTarget.Process);
CloudStorageAccount storageAccount = CloudStorageAccount.Parse(storageConnectionString);
CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient();
CloudBlobContainer container = blobClient.GetContainerReference(@"images");
var blobs = container.ListBlobs("nature", true);
Dies sollte Blobs im Ordner "nature" und in allen darunter liegenden Ordnern auflisten.
Im Wesentlichen lag das Problem bei der folgenden Codezeile:
CloudBlobContainer container = blobClient.GetContainerReference(@"images/nature");
Azure Blob Storage verfügt grundsätzlich über eine Hierarchie mit zwei Ebenen - Container und Blobs. Die Ordner dort sind virtuelle und im Wesentlichen Präfixe, die Sie in den Namen eines Blobs eingeben.
In meinem Code habe ich die Blobs aus dem Container aufgelistet, deren Name mit einem Präfix beginnt (in Ihrem Beispiel "nature").
Dieser Artikel stammt aus dem Internet. Bitte geben Sie beim Nachdruck die Quelle an.
Bei Verstößen wenden Sie sich bitte [email protected] Löschen.
Lass mich ein paar Worte sagen