Azure函数BlobTrigger复制图片异常及Stream参数转换报错问题求助
Azure函数BlobTrigger复制图片异常及Stream参数转换报错问题求助
各位好,我最近在做Azure Blob相关的功能时遇到了两个棘手的问题,想请教下社区的朋友们:
我有一个ASP.NET MVC项目,目前实现了图片上传到Azure Blob存储的功能,这部分是正常的——图片能成功上传,后续下载也能正常查看,没有任何问题。但我又写了一个BlobTrigger触发的Azure函数,目的是把刚上传到function-sale-response容器的图片复制到另一个容器里。现在的情况是,函数确实能被正常触发,也能获取到图片的名称,但复制后的图片大小始终只有22字节,完全无法正常打开。
另外还有个奇怪的点:如果我把BlobTrigger绑定的参数类型从ReadOnlyMemory<byte>改成Stream,函数直接不会被触发,还会抛出这样的错误:Cannot convert input parameter 'inputStream' to type 'System.IO.Stream' from type 'System.ReadOnlyMemory'
下面是我的函数代码:
using Microsoft.Azure.Functions.Worker; using Microsoft.Extensions.Logging; [Function("ResizeImage")] public async Task<ResizeImageOutput> Run([BlobTrigger("function-sale-response/{name}", Connection = "AzureWebJobsStorage")] ReadOnlyMemory<byte> inputData, string name) { await Task.Delay(1000); // 模拟一些处理延迟 var stream = new MemoryStream(inputData.ToArray()); return new ResizeImageOutput { ResizedImage = stream }; }
有没有朋友知道这两个问题的根源是什么?麻烦帮忙分析下,提前感谢大家的解答!
内容来源于stack exchange
相关产品推荐
相关产品推荐

