2016-06-28 6 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

Cluster.Description.Stateはすぐには更新されません。私がチェックすると、およそ100 +ミリ秒後に更新されました。ドライバには接続プールが含まれており、非同期性が非常に高いようです。

ただし、クラスタプロパティには、接続が完了すると起動される "DescriptionChanged"イベントがあります。

他の誰かが接続やタイムアウトに関する知識を持っている場合は、それを共有してください。

関連する問題