从 Uri 和连接字符串创建 Azure BlobClient

Creating Azure BlobClient from Uri and connection string

我想创建一个 Azure SDK BlobClient 知道 blob Uri。我可以那样做:

    StorageSharedKeyCredential storageCredential = new StorageSharedKeyCredential("devstoreaccount1", "account key");
    BlobClient bl = new BlobClient(new Uri(blobUri), storageCredential);

但我不想在这种情况下使用 StorageSharedKey。我想使用连接字符串。

然而,将连接字符串作为第一个参数的构造函数如下所示:

是否有另一种方法可以使用 Blob Uri + 连接字符串来初始化 BlobClient?如果不是,因为我所有的输入都是 Blob Url,有没有办法解析 Url 以隔离容器名称和 blob 名称?我不知道如何识别它们。

有点棘手的解决方案,但您可以尝试这样的事情:

        BlobClient blobClient = new BlobClient(new Uri("blob-uri"));
        var containerName = blobClient.BlobContainerName;
        var blobName = blobClient.Name;
        blobClient = new BlobClient(connectionString, containerName, blobName);