在.net世界中将JSON转换为BSON的最简单方法是什么?

时间:2014-11-19 09:17:42

标签: c# .net mongodb bson

我刚刚开始研究MongoDB。从我的JavaScript客户端我发送一个JSON字符串到ASP.NET WEB API项目。是否可以直接使用此JSON字符串并将其保存到MongoDB中?我也想知道这种方法是否有意义?

我正在考虑从客户端传递JSON,在服务器端读取string

 [System.Web.Mvc.HttpPost]
    public dynamic SaveData([FromBody] string data)
    {

        System.Web.HttpContext.Current.Request.Form[0]
        return null;
    }

3 个答案:

答案 0 :(得分:4)

试试这个:

string json = "...";
BsonDocument.Parse(json);

答案 1 :(得分:0)

是的,你可以。 但请记住,在不检查用户数据的情况下发送客户端数据可能会导致安全问题(从不信任用户的输入) 您可以使用insert收集方法执行此操作。 请记住,如果你的json中没有_id,Mongodb会为你制作它。

例如,我将在" test"中创建一个文档。这样的集合

db.test.insert(
 {
   "foo":"bar"
 }
);

,结果可能是那样的

{
    "_id" : ObjectId("546c9be08e66b0571a5e3965"),
    "foo" : "bar"
}

答案 2 :(得分:0)

试试这个!

string json = "{ 'foo' : 'bar' }";
MongoDB.Bson.BsonDocument document
= MongoDB.Bson.Serialization.BsonSerializer.Deserialize<BsonDocument>(json);