我刚刚开始研究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;
}
答案 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);