首页 > 解决方案 > 从 Uri 和连接字符串创建 Azure BlobClient

问题描述

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

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

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

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

在此处输入图像描述

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

标签: azure-storageazure-sdk-.netazure-sdk

解决方案


一种 hacky 解决方案,但您可以尝试以下方法:

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

推荐阅读