【问题标题】:JSON reader was expecting a value but found 'function'JSON 阅读器期待一个值,但找到了“函数”
【发布时间】:2016-02-06 21:05:14
【问题描述】:

我有一个包含 BsonJavascript 对象的集合。

{ 
    "Name" : "HourlyMP", 
    "MapFunction" : function(){
        var _id = this.srcip + " - " + this.hour
        var valueData = {
            ip: this.srcip,
            session: 1
        }
        emit(_id, valueData);
    } 
}

如您所见,“MapFunction”字段的值是 BsonJavascript。我可以成功导出和导入这些数据。但是当我将导出的 json 反序列化为 BsonDocument 时,我得到了这个错误:

JSON reader was expecting a value but found 'function'

顺便说一句,我使用的是官方 C# 2.2 驱动程序,我的反序列化代码如下:

BsonSerializer.Deserialize<BsonDocument>(myjsonstring)

编辑

我将函数定义为字符串,然后在我的代码中将其转换为 BsonJavascriptFunction。这解决了我的问题。谢谢回复

【问题讨论】:

    标签: c# .net mongodb mongodb-csharp-2.0


    【解决方案1】:

    根据文档,BsonSerializer.Deserialize&lt;TNominalType&gt;(String) 反序列化 JSON 字符串。

    函数在 JSON 中无效。

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-09
    • 2021-06-20
    • 1970-01-01
    • 2019-05-24
    • 2014-02-09
    • 1970-01-01
    相关资源
    最近更新 更多