有没有办法在windows azure中重命名blob容器名?
答案 0 :(得分:12)
<强>更新强>
请参阅以下 Nuri Tasdemir 的回答。
没有。您无法在Windows Azure中重命名Blob容器。你可以做的是创建一个新的blob容器,其中包含新名称,并将旧Blob容器中的blob复制到新容器。复制blob后,您可以删除旧的Blob容器。请注意,如果您在Cloud中执行复制blob,则此操作是异步的。因此,请确保在删除blob容器之前完全复制blob。
答案 1 :(得分:0)
不。您无法在Windows Azure中重命名Blob容器。
要从旧存储复制到新存储的代码
AzCopy / Source:https://oldstorage.blob.core.windows.net/oldstorage / Dest:https://newstorage.blob.core.windows.net/newstorage / SourceKey:sourcekey / DestKey:destkey / S / XO
答案 2 :(得分:0)
答案 3 :(得分:-1)
结帐listing container。您可以列出所有blob并轻松将它们复制到新容器中。
那里还有更多有用的东西。
答案 4 :(得分:-1)
此RenameBlob方法允许您重命名Azure容器中的文件夹或文件。
HTH
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();
}
}
}