2016-06-28 2 views
0

GetServer ушел навсегда. Как проверить, подключен ли сервер или даже существует?C# MongoDB.Driver: Как узнать, подключен ли сервер. Замена GetServer

Пример кода:

// This server exists 
var exists = new MongoClient("mongodb://192.168.2.109:27017"); 

// This server does not exist 
var doesNotExist = new MongoClient("mongodb://194.168.200.129:27017"); 

// Both states return "Discennected" 
var connStateExisting = exists.Cluster.Description.State; 
var connStateNotExisting = doesNotExist.Cluster.Description.State; 

// GetDatabase("name") works for both without errors. 

Как я могу проверить, если сервер может быть связано?

ответ

0

The Cluster.Description.State не обновляется незамедлительно. Когда я проверил, он был обновлен примерно через 100 миллисекунд. Драйвер содержит пул соединений, и, похоже, он довольно много асинхронен.

Однако у Cluster-property есть «DescriptionChanged» -event, который запускается после завершения соединения.

Если у кого-то есть какие-либо знания о соединениях и тайм-аутах, пожалуйста, поделитесь им.

Смежные вопросы