在单实例MongoDB服务器上,即使将客户端上的写入关注设置为日志记录,每几千个文档中就有一个在插入后不会立即被替换。我的印象是,一旦记录下来,文档就可以立即供查询。下面的代码插入一个文档,然后更新文档的DateModified属性,并尝试根据文档的Id和该属性的旧值更新文档。publicclassMyDocument{publicBsonObjectIdId{get;set;}publicDateTimeDateModified{get;set;}}staticvoidMain(string[]args){varr=Task.Run(MainAsync);Console.WriteL
在较旧的.NetAPI版本中:MongoClientclient=newMongoClient();varserver=client.GetServer();vardb=server.GetDatabase("foo");varcollection=db.GetCollection("bar");vardocument=newBsonDocument{{"_id",1},{"x",2}};collection.Save(document);成功了。当我使用新的.NetDriver2.0时:varclient=newMongoClient("mongodb://localhost:270
我有一个基类Entity,它有一个字符串Id成员和一个派生类A。但是当创建派生类的新实例并使用InsertOneAsync将其添加到我的集合时,文档将添加到数据库中,Id值为null。使用ObjectId作为Id似乎可行,但我试图防止我的模型依赖MongoDB。我也尝试了下面的代码,但是结果是一样的:BsonClassMap.RegisterClassMap(cm=>{cm.MapIdField(x=>x.Id).SetSerializer(newStringSerializer(BsonType.ObjectId));}); 最佳答案