我创建了一个带有 Blob 存储触发器的 Azure 函数 - 我想处理一个文件,然后将该文件转储到另一个 Blob 存储容器。
在最简单的情况下,我想它会是这样的:
public static void Run(Stream blob, string name, out Stream outputBlob, TraceWriter log)
{
outputBlob = blob;
}
这些是我的绑定(bind):
{
"bindings": [
{
"name": "blob",
"type": "blobTrigger",
"direction": "in",
"path": "input/{name}",
"connection": "wlimportstaging_STORAGE"
},
{
"name": "outputBlob",
"type": "blob",
"direction": "out",
"path": "original/{name}",
"connection": "wlimportstaging_STORAGE"
}
],
"disabled": false
}
我从文档中了解到,如果您返回 POCO,它会将其序列化为 JSON。
https://learn.microsoft.com/en-us/azure/azure-functions/functions-bindings-storage-blob#output-usage
这似乎表明您可以输出到流 - 我似乎得到:
Microsoft.Azure.WebJobs.Host:无法将 Blob 绑定(bind)到类型“System.IO.Stream&”
请帮忙!
最佳答案
你也这样做
public static async Task Run(Stream myBlob, string name, Stream outputBlob, TraceWriter log)
{
await myBlob.CopyToAsync(outputBlob);
}
关于Azure Functions - Blob 流输出绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40741273/