【发布时间】:2019-01-20 03:30:42
【问题描述】:
使用 ASA 作业,输入作为 IoT 中心,事件中心作为输出,一个流媒体单元和每秒 36 条消息。
ASA 将多个对象作为单个字符串发送到事件中心。
例如- 当我通过上传示例 IoT Hub 输入 json 文件测试 ASA 作业时,在单行中获取以下对象(输出中每行一个对象),这是预期的 - “{“assetbarcode”:“MobileGW153353803144884Asset”,“sensorruleid”:1159, "groupid":681}"
但是当启动 ASA 作业并启动 C# 事件中心接收器时,将多个对象作为单个字符串 - "{"assetbarcode":"MobileGW153353803144884Asset","sensorruleid":1159,"groupid":681} {"assetbarcode":"MobileGW153353803144884Asset","sensorruleid":1159,"groupid":681} {"assetbarcode":"MobileGW153353803144884Asset","sensorruleid":1159,"groupid":681}"
所以它无法反序列化,因为它是无效的 json。字符串不是数组或逗号分隔的对象。
【问题讨论】:
-
您所指的那个 SimpleEventProcessor not 反序列化 json 字符串。因此,它将 json 数据显示为单个字符串。这里没有错。
-
但它是无效的 json 字符串,期望一个消息/对象作为 eventData 但我在单个 json 字符串中获取多个对象。
标签: azure-eventhub azure-stream-analytics