Mongo在C#中插入了_v字段

时间:2019-04-04 07:21:31

标签: c# json mongodb

我正在尝试使用C#,JObject和BSONDocument将数据插入MongoDB,而不定义任何模型(直接JSON)。 也许这可能是与How to remove _v and _t from mongo documentHow to prevent _t and _v when inserting into MongoDB?重复的,但是我找不到答案。

但是有_t和_v字段。我之前输入的值作为对象存储在_v字段中。

这是代码

var mongo = new MongoClient(new MongoUrl("mongodb://localhost"));
var db = "test";
var database = mongo.GetDatabase(db);
dynamic obj = new JObject();
obj["coy"] = "haha";
BsonDocument c = BsonDocument.Parse(obj.ToString());
database.GetCollection<dynamic>("test").InsertOne(c);

和结果

// 1
{
    "_id": ObjectId("5ca5ace48d93c485ce90bb43"),
    "_t": "MongoDB.Bson.BsonDocument, MongoDB.Bson",
    "_v": {
        "coy": "haha"
    }
}

有什么想法吗?谢谢。

1 个答案:

答案 0 :(得分:1)

使用BsonDocument作为收集类型:

database.GetCollection<BsonDocument>("test").InsertOne(c);