【发布时间】:2018-11-01 15:07:11
【问题描述】:
我有一个设备以这种格式发送数据的场景
[
{
"Metadata":{"DeviceID":"MWS55V","GatewayID":"abc1"},
"Payload": [{"Type":"401","Data":"17.51"}],
"Timestamp":"2018-11-01T09:33:05Z"},
{
"Metadata":{"DeviceID":"MWS55V","GatewayID":"abc1"},
"Payload": [{"Type":"401","Data":"18.28"}],
"Timestamp":"2018-11-01T09:34:05Z"
}
]
我添加了Azure Stream Analytics C# UDF
想法是使用整个对象作为参数,并根据Payload.Type更改每个Payload.Data。
但是当我尝试将Payload 对象作为参数传递给c# UDF 时,会引发异常
错误:** 系统异常 ** ASA 将不支持的类型 System.Object 传递给 CSharp UDF Func 以可变负载
它起作用的唯一方法是当我尝试类型(长、字符串等)的参数时。
虽然这个doc 明确表示支持的类型,有没有办法接收c# udf 内的整个对象,或者这个服务不是这个场景的最佳选择,我需要使用别的东西?
【问题讨论】:
标签: azure user-defined-functions azure-stream-analytics azure-iot-edge