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 に変換しました。これで私の問題は解決しました。返信ありがとう