2012-01-05 117 views
0

我正在使用官方的MongoDB C#驱动程序,我试图找到一种将BSonDocument反序列化到类中的方法。从WCF数据服务返回BSonDocuments

事情是我希望这是通用的(不必事先手动创建)。 我需要这样做,因为我正在构建一个ServiceOperation WCF数据服务,该服务将返回我的mongo数据库中的文档。返回的文档可以是任何东西,因此它们不一定适合某个类的结构。

不幸的是,我不能只返回BSonDocuments列表作为我的服务抱怨

The type 'MongoDB.Bson.BsonDocument' is not a complex type or an entity type. 

任何你面临着类似的问题呢?如果是这样,你推荐什么?

回答

1

您可以将您的BsonDocument转换为JSON字符串并返回,然后在接收端解析它。

在服务器:

var json = document.ToJson(); 
return json; 

在客户端:

var document = BsonSerializer.Deserialize<BsonDocument>(json); 
+0

是啊,这是一个有效的替代。我会跟这个,谢谢你的建议。 – Mathieu 2012-01-05 20:11:56