Ein timeout ist aufgetreten, nachdem 30000ms Auswahl eines Servers über die CompositeServerSelector
Ich versuche zum bereitstellen von meine Mongo-Datenbank in Mongolabs, funktioniert alles einwandfrei, und ich erstellen Sie eine neue Datenbank. Bitte Lesen Sie meinen connectionstring.
public DbHelper()
{
MongoClientSettings settings = new MongoClientSettings()
{
Credentials = new MongoCredential[] { MongoCredential.CreateCredential("dbname", "username", "password") },
Server = new MongoServerAddress("ds011111.mongolab.com", 11111),
//ConnectTimeout = new TimeSpan(30000)
};
Server = new MongoClient(settings).GetServer();
DataBase = Server.GetDatabase(DatabaseName);
}
aber wenn ich versuche, die Verbindung der Datenbank, es zeigt Fehler wie:
- Haben Sie eine Lösung für Ihr problem ? Weil ich habe das gleiche problem
- Ja, habe ich verwechselt in der Verbindungszeichenfolge erstellen, so dass der timeout-Fehler ist aufgetreten. Bitte siehe die Antwort weiter unten.
- Mögliche Duplikate von MongoDB C# 2.0 TimeoutException
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich bin ersetzen Sie die Verbindungszeichenfolge Methode wie unten.
Nun ist es gelöst.
Bitte siehe die Antwort von Paul Lemke.
MongoSettings(new MongoUri("..."))
Hinzufügen "?connect=replicaSet" an das Ende der Verbindungszeichenfolge, wenn Sie MongoLab.
Diese JIRA-ticket hat einige details: https://jira.mongodb.org/browse/CSHARP-1160
Grundsätzlich die Standard-Verbindung zu einem replikatsatzmitglied. Aber MongoLab Single-Node-Einstellungen sind eigentlich eine single-node-Replikat festgelegt, und das lässt uns nicht Vertrauen. Anfügen ?connect=replicaSet, um die Verbindungszeichenfolge zu zwingen, den Fahrer zu bewegen, in Replik-set-Modus und alles wird funktionieren.
Gefunden, dass die info hier.
Stellen Sie Sicher, Ihre auth-db ist richtig eingestellt.
Ich lief in dieses Problem, als ich erwähnte, nur die DB wollte ich verbinden und mein auth-db war anders (andere als-admin-db ).
Den db-name in dieser Zeile wird als der auth-DB .
Dann können Sie ändern Sie den ausgewählten DB Später
Stellen Sie sicher, dass der Datenbank-Benutzername ist auch groß-und Kleinschreibung. Ich lief in dieses Problem, weil die groß-und Kleinschreibung des Benutzernamens.
Stellen Sie sicher, Ihre aktuelle ip-Adresse in der weißen Liste aufgeführt in der mongo-db-server.
Wenn Sie ändern Ihr internet-provider die neue IP muss in der weißen Liste aufgeführt.
Gleiche Fehlermeldung aber nicht auf, mit einem MongoLabs Bereitstellung.
Ich einfach mal mit dem gleichen Fehler aufgeführt, in der Titel mit einem Asp.Net Core-App. Mein Problem wurde durch ein IOC-Konfiguration Problem.
In meinem IOC-container, mein gewickelt MongoClient Instanz konfiguriert wurde, mit einer Abhängigkeit transient lifestyle.
Pro Der MongoDb C# Driver:
Ich förderte den lebensstil von meinem Objekt ein singleton, und es das Problem behoben hat.
Ich bin mit:
Bitte Referenz der C# - Treiber Client Abschnitt:
http://mongodb.github.io/mongo-csharp-driver/2.5/reference/driver/connecting/#re-use