如何在windows azure中重命名容器名称?

bprjcwpo  于 2023-02-05  发布在  Windows
关注(0)|答案(5)|浏览(138)

有没有什么方法可以在windows azure中重命名blob容器名称?

gupuwyp2

gupuwyp21#

此答案不再有效。他们似乎已从“*Microsoft Azure存储资源管理器 *”中删除此功能
现在,你可以使用Microsoft的“Microsoft Azure Storage Explorer”(0.8.3之后的版本)重命名容器。你还可以使用此工具重命名Azure表和文件共享。请参阅发行说明here
请注意,此功能在使用过程中有以下免责声明。
重命名的工作方式是复制到新名称,然后删除源项。重命名Blob容器当前会丢失容器的属性和元数据,如果有大量Blob,则可能需要一段时间。
因此,这不是实际的幕后重命名,会产生读/写/事务成本。

xjreopfe

xjreopfe2#

    • 更新**

请参见下面 * Nuri Tasdemir * 的回答。
不可以。你不能在Windows Azure中重命名Blob容器。你可以做的是使用新名称创建新Blob容器,然后将Blob从旧Blob容器复制到新Blob容器。复制Blob后,你可以删除旧Blob容器。请注意,如果你在云中执行复制Blob,则此操作是异步的。因此,请确保在删除Blob容器之前完全复制Blob。

hc8w905p

hc8w905p3#

我在storage explorer v1.15.1中找不到重命名功能,但我确实使用了clone选项创建了一个副本并删除了旧容器。

4zcjmb1e

4zcjmb1e4#

不能。不能在Windows Azure中重命名Blob容器。
要从旧存储复制到新存储的代码
AzCopy /来源:https://oldstorage.blob.core.windows.net/oldstorage/目的地:https://newstorage.blob.core.windows.net/newstorage/源密钥:源密钥/目标密钥:目标密钥/S /XO

sqyvllje

sqyvllje5#

此RenameBlob方法将允许你重命名Azure容器中的文件夹或文件。

  • 相册1/图像1.jpg-〉相册2/图像1.jpg
  • 相册1/图像1.jpg-〉相册1/图像2.jpg

高温加热

public class AzureStorageService
{
    readonly CloudStorageAccount _storageAccount = CloudStorageAccount.Parse(ConfigurationManager.ConnectionStrings["StorageConnectionString"].ConnectionString);

    public void RenameBlob(string oldName, string newName)
    {
        var blobClient = _storageAccount.CreateCloudBlobClient();
        var container = blobClient.GetContainerReference("MyContainer");

        var blobs = container.GetDirectoryReference(oldName).ListBlobs();

        foreach (var item in blobs)
        {
            string blobUri = item.Uri.ToString();

            var oldBlob = container.GetBlockBlobReference(blobUri);
            var newBlob = container.GetBlockBlobReference(blobUri.Replace(oldName, newName));

            newBlob.StartCopyFromBlob(oldBlob);

           oldBlob.Delete();
        }
    }
}

相关问题