使用输入为IoT中心和事件中心为输出的ASA作业,并具有一个流式单位和每秒36条消息。
ASA将多个对象作为单个字符串发送到事件中心。
例如-当我通过上载示例IoT中心输入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,因此无法反序列化。字符串不是数组或逗号分隔的对象。
答案 0 :(得分:1)
如果将输出配置为行分隔,则此输出是预期的。要反序列化,您可以逐行读取并反序列化每行,或让JObjects的反序列化序列。
如果您更喜欢json数组,请选择array。 This page有更多详细信息。请注意,如果作业在关闭文件之前重新启动,则关闭“]”文件可能会丢失文件