【发布时间】:2019-05-17 12:58:57
【问题描述】:
使用 Visual Studio 2017 创建面向 .Net Standard 2.0 的 Azure Functions。
使用添加新 Azure 函数向导,成功创建了具有以下方法签名的 blob 触发器方法。
public static void Run([BlobTrigger("attachments-collection/{name}")] Stream myBlob, string name, ILogger log)
此方法编译并工作正常。
但是,我们希望能够访问连接到保存到存储中的 CloudBlockBlob 的元数据,据我所知,使用流是不可能的。此站点上的其他答案(例如 (Azure Function Blob Trigger CloudBlockBlob binding) 建议您可以绑定到 CloudBlockBlob 而不是 Stream 并以这种方式访问元数据。但建议的解决方案无法在最新版本的 Azure Functions 中编译。
Microsoft 的在线文档 (https://docs.microsoft.com/en-us/azure/azure-functions/functions-bindings-storage-blob#trigger---usage) 似乎也确认可以将触发器绑定到 CloudBlockBlob 而不是 Stream,但没有给出语法示例。
有人可以澄清一下使 Azure Function Blob 存储触发器绑定到 CloudBlockBlob 而不是标准 Stream 所需的确切语法吗?
谢谢
【问题讨论】:
-
您是否将 Blob 属性中的
FileAccess.ReadWrite设置为参数?根据您必须的文档。 docs.microsoft.com/en-us/azure/azure-functions/… -
万一出现编译错误。可以在这里留言吗?
-
我要做的是捕获触发该功能的 CloudBlockBlob。为此,我相信我需要使用 BlobTrigger 属性而不是 Blob 属性。当我尝试在 BlobTrigger 属性中设置 FileAccess.ReadWrite 时,出现编译错误“'BlobTriggerAttribute 不包含采用两个参数的构造函数”。
标签: azure azure-functions azure-blob-storage