如何使用新名称将流上传到 Azure blob

Afs*_*hin 5 c# blob image stream azure

我想将 Azure blob 下载到流中,然后将流转换为图像以调整大小,然后使用新名称将新图像上传到 Azure blob。现在我可以调整图像大小并上传流,但我无法将具有新名称的流上传到 Azure。
这是我的代码:

Stream stream = blockBlob.OpenRead();

Image newImage;          
Bitmap image = new Bitmap(stream);
newImage = new Bitmap(image, 20, 20);

var ms = new MemoryStream();
newImage.Save(ms, ImageFormat.Png);
ms.Position = 0;

blockBlob.UploadFromStream(ms);
Run Code Online (Sandbox Code Playgroud)

Gau*_*tri 5

这实际上很简单。您可能需要做的是创建一个CloudBlockBlob具有新 blob 名称的实例并将内容上传到那里。假设您希望在同一个容器中上传新文件,您可以这样做:

        Stream stream = blockBlob.OpenRead();

        Image newImage;
        Bitmap image = new Bitmap(stream);
        newImage = new Bitmap(image, 20, 20);

        var ms = new MemoryStream();
        newImage.Save(ms, ImageFormat.Png);
        ms.Position = 0;

        var newBlob = blockBlob.Container.GetBlockBlobReference("new-blob-name.png");
        newBlob.UploadFromStream(ms);
Run Code Online (Sandbox Code Playgroud)