sql >> Databáze >  >> NoSQL >> MongoDB

Nelze se připojit k MongoDb (pomocí ověřování) pomocí mongocsharpdriver 2.7.0

Klikněte na tento odkaz Stránky Mongo a podívejte se na sekci

Problém je v tom, že ověřujete uživatele mongoadmin pro clientdb. Ale uživatel mongoadmin je ověřen do admin db. Nechte ověřit uživatele mongoadmin a poté můžete získat přístup k clientdb.

Níže je ukázka využívající metodu URI:

        IMongoClient _client;
        public readonly IMongoDatabase _database;

        public MongoContext_URIBased()
        {
            var mongoUrl = new MongoUrl("mongodb://mongoadmin:[email protected]:2020/admin");
            _client = new MongoClient(mongoUrl);
            _database = _client.GetDatabase("clientdb");
        } 

A podle vašeho kódu bude fungovat níže:

Váš konfigurační soubor by měl vypadat takto:

<appSettings>
<add key="MongoMasterDatabaseName" value="admin" />
<add key="MongoUsername" value="mongoadmin" />
<add key="MongoPassword" value="secret" />
<add key="MongoPort" value="2020" />
<add key="MongoHost" value="172.17.103.158" />
<add key="MongoClientDatabaseName" value="clientDb" />


</appSettings>

A kód C#:

public class MongoContext
    {
        IMongoClient _client;
        public readonly IMongoDatabase _database;

        public MongoContext()
        {
            MongoCredential credential = MongoCredential.CreateCredential(ConfigurationManager.AppSettings["MongoMasterDatabaseName"], ConfigurationManager.AppSettings["MongoUsername"], ConfigurationManager.AppSettings["MongoPassword"]);
            var settings = new MongoClientSettings
            {
                Credential = credential,
                Server = new MongoServerAddress(, Convert.ToInt32(ConfigurationManager.AppSettings["MongoPort"]))
            };
            _client = new MongoClient(settings);
            _database = _client.GetDatabase(ConfigurationManager.AppSettings["MongoClientDatabaseName"]);
        }
    }

Jak můžete vidět, uživatel mongoadmin se nejprve ověřuje na admin db. Poté se můžete připojit k clientdb



  1. Proč je řazení MongoDb pomalé s kolekcemi vyhledávání

  2. Jak ukládat velká čísla v MongoDB pomocí Node.js

  3. Projekt pole objektů na klíčovou hodnotu

  4. Časový limit výběru serveru vypršel po 10 000 ms - Nelze připojit Compass k mongoDB na localhost