La façon la plus appropriée de le faire n'est pas de vérifier le serveur mais plutôt le cluster (qui peut contenir plusieurs serveurs) et vous pouvez y accéder directement à partir du MongoClient
instance :
public bool IsClusterConnceted
{
get
{
return _client.Cluster.Description.State == ClusterState.Connected;
}
}
Si vous souhaitez vérifier un serveur spécifique, c'est également possible :
public bool IsServerConnceted
{
get
{
return _client.Cluster.Description.Servers.Single().State == ServerState.Connected;
}
}
Gardez à l'esprit que la valeur est mise à jour par la dernière opération, il se peut donc qu'elle ne soit pas actuelle. La seule façon de s'assurer qu'il y a une connexion valide est d'exécuter une sorte d'opération.