Il modo più appropriato per farlo non è controllare il server ma piuttosto il cluster (che può contenere più server) e puoi accedervi direttamente da MongoClient
esempio:
public bool IsClusterConnceted
{
get
{
return _client.Cluster.Description.State == ClusterState.Connected;
}
}
Se desideri controllare un server specifico, è anche possibile:
public bool IsServerConnceted
{
get
{
return _client.Cluster.Description.Servers.Single().State == ServerState.Connected;
}
}
Tieni presente che il valore viene aggiornato dall'ultima operazione quindi potrebbe non essere aggiornato. L'unico modo per assicurarsi che ci sia una connessione valida è eseguire un qualche tipo di operazione.