Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- MongoClientSettings settings = new MongoClientSettings();
- settings.ReplicaSetName = "MyReplica";
- settings.ConnectionMode = ConnectionMode.ReplicaSet;
- settings.ReadPreference = new ReadPreference(ReadPreferenceMode.Secondary);
- settings.Server = new MongoServerAddress("Host2", 27017);
- MongoClient client = new MongoClient(settings);
- var dbadmin = client.GetDatabase("admin");
- //Класс ReplicaInfo соответствует JSON ответу на rs.Status()
- var replSetGetStatus = dbadmin.RunCommand<ReplicaInfo>("{ replSetGetStatus: 1 }");
- //Класс Member соответствует описанию члена реплики по rs.Status()
- Member memberInfo = replSetGetStatus.members.First(x => x.Self);
- Console.WriteLine(memberInfo.Name + ":" + memberInfo.StateStr);
- [BsonIgnoreExtraElements]
- class Members
- {
- [BsonElement("self")]
- public bool Self { get; set; }
- [BsonElement("name")]
- public string Name { get; set; }
- [BsonElement("stateStr")]
- public string StateStr { get; set; }
- }
- [BsonIgnoreExtraElements]
- class ReplicaInfo {
- [BsonElement("members")]
- public List<Members> members { get; set; }
- }
Add Comment
Please, Sign In to add comment