Azure Function Blob 触发器 CloudBlockBlob 绑定(bind)

标签 azure azure-blob-storage azure-functions

当文件上传到 Blob 存储时,我会触发以下 Azure 函数

[FunctionName("ImageAnalysis")]
    public static async void Run(
        [BlobTrigger("imageanalysis/{name}", Connection = "AzureWebJobsStorage")] Stream myBlob, 
        string name, 
        TraceWriter log)
    {
        log.Info($"C# Blob trigger function Processed blob\n Name:{name} \n Size: {myBlob.Length} Bytes");
    }

我想处理已上传的 Blob,因此理想情况下我希望将其作为 CloudBlockBlob 而不是 Stream。然后我可以做一些工作,然后删除该 blob。

myBlob.DeleteIfExists()

有没有一种简单的方法可以将我的 Stream 转换或转换为 CloudBlockBlob,或者我是否需要使用输入/输出绑定(bind)或其他东西?

浏览文档时,我看到了使用 CloudBlockBlob 的示例,但我似乎无法让它工作,所以我认为我错过了一些东西?

最佳答案

使用此语法进行绑定(bind)。诀窍是在属性中指定FileAccess.ReadWrite。由于某种原因,文档将其称为“inout”,相当令人困惑。

[Blob("imageanalysis/{name}", FileAccess.ReadWrite, Connection = "AzureWebJobsStorage")] CloudBlockBlob blob, string name

关于Azure Function Blob 触发器 CloudBlockBlob 绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49384959/

相关文章:

wordpress - 我可以在 Microsoft Azure(Bizspark 帐户)上安装 WAMP 吗?

Azure 存储 Blob : what kind of blob do I get with GetBlobReference()?

azure - 如何使用azure逻辑应用程序、函数aps从azure存储(文件共享或BLOB)中读取、写入、删除文件

azure - CosmosDb 具有高分区键基数的缓慢更改性能

Azure Web 角色内部端点 - 未负载平衡

azure - 使用 Azure ARM 模板创建 AKS 群集并部署我的 Kubernetes 应用程序

c# - Azure DocumentClient 线程安全

azure - 下载大文件并将其拆分为 blob 存储中的 100 MB block

将目录重定向到 Azure url

azure - 如何使用 Azure Function 中的范围 header 和部分内容流式传输存储在 Azure Blob 存储中的 mp4 文件?