我的Azure功能有两个输入参数:
我正在尝试将两个参数绑定到自定义类型(在我的情况下为F#记录)。绑定适用于触发器,但不适用于博客绑定,这会产生以下错误:
Microsoft.Azure.WebJobs.Host: Error indexing method 'Functions.MailboxFanOut'.
Microsoft.Azure.WebJobs.Host: Can't bind Blob to type 'Run+CustomerName'.
以下是代码:
[<CLIMutable>]
type CustomerName = {
UserName: string
}
let Run(item: CustomerName, userNames: CustomerName, log: TraceWriter) =
log.Verbose("F# function executing")
用课程替换F#记录并没有帮助......
这是函数定义:
{
"bindings": [
{
"type": "eventHubTrigger",
"name": "item",
"direction": "in",
"path": "blabla",
"connection": "eventhubs",
"consumerGroup": "$Default"
},
{
"type": "blob",
"name": "userNames",
"path": "tada/123",
"connection": "foo",
"direction": "in"
}
],
"disabled": false
}
答案 0 :(得分:2)
不幸的是,blob绑定目前还没有像您期望的那样支持POCO绑定。我们在跟踪此here的repo中有一个未解决的问题。
要解决此问题,我建议绑定到Stream,字符串或其他一种受支持的类型,并在方法中对您的POCO类型进行反序列化。