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

标签 c# image azure stream blob

我想将 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);

最佳答案

这实际上非常简单。您可能需要做的是使用新的 blob 名称创建一个 CloudBlockBlob 实例,并将内容上传到其中。假设您希望在同一个容器中上传新文件,您可以执行以下操作:

        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);

关于c# - 如何使用新名称将流上传到 Azure blob,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43370622/

相关文章:

Android:相机拍摄但图像被镜像

Azure AD - 在/授权登录中的 id_token 中没有应用程序角色声明,但在/ token 登录中有

azure - 如何刷新 Azure AD B2C 身份 token

c# - 如何将不同的解决方案(和存储库)发布到同一项目?

C# 自定义事件始终为空

image - Monotouch 相机图像捕捉和上传

C# 安装类未执行

image - 我们如何在运行容器时看到特定图像的版本,就像golang一样,我们使用version字段

c# - 是否可以为一个#region 范围编写多行注释?

c# - DPAPI 会自动执行 Dynamic Salt 吗?