C# MongoDB 设置 ReadPreference

标签 c# mongodb

可能就在我面前,但我不确定如何在 C# 驱动程序中设置 ReadPreference.Secondary 设置?我想将查询负载分配到辅助节点而不是默认节点。我已经在节点本身上设置了slaveOk()。

任何帮助/示例将不胜感激。我只是找不到设置该属性的好例子。

谢谢

编辑:所以也许 ReadPreference 尚未在 C# 驱动程序中实现...看起来确实如此。那么我会使用slaveok吗?

类似于以下之一?:

var mongoServer = MongoServer.Create("mongodb://localhost/?
replicaSet=myset;slaveOk=true");

var db = mongoServer.GetDatabase("MyDb");
var coll = db.GetCollection("MyColl");

var cs= db.CreateCollectionSettings<BsonDocument>("Users");
cs.SlaveOk = true;
var coll = db.GetCollection(cs);

编辑2: 看起来我可能还需要修改连接字符串来装饰每个 Mongo 实例?

mongodb://serverA:27017,serverB:27017,serverC:27017/?safe=true;replicaset=myreplicaset;slaveok=true

最佳答案

是的,ReadPreferences 尚未在 C# 驱动程序中实现。我们 10gen 一直在等待实现 ReadPreferences,直到所有驱动程序(包括 mongos)都可以同时实现。此支持大约在服务器版本 2.2 时提供。

关于C# MongoDB 设置 ReadPreference,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11178585/

相关文章:

mongodb - 我如何调试 MongoDB 慢 block 迁移?

mongodb - 使用spring data mongodb删除对象中的数组条目

javascript - 无法读取未定义的 asp MVC Morris Chart 的属性 'match'

c# - MSNP-Sharp 示例无法登录,出现 SocketException

mongodb - 如果 mongoDB 中尚不存在集合,如何自动创建集合?

c - Mongodb:C 驱动程序中的可尾游标具有最新的 "_id"

C# MongoDB 复杂类序列化

c# - 有没有办法在我的 ASP.Net MVC 5 应用程序之间传递 Windows 身份验证 session ?

c# - 如何在 C# 的 Webbrowser 控件中将 InnerText 转换为 InnerHtml?

c# - ListView 项目大小