W przypadku sterownika C# zazwyczaj nie używa się opcji umieszczania nazwy bazy danych w parametrach połączenia. Jest częściowo obsługiwany, aby zapewnić pewien poziom zgodności z innymi sterownikami.
MongoServer.Create ignoruje nazwę bazy danych. Wszelkie dane uwierzytelniające (nazwa użytkownika/hasło) w ciągu połączenia są używane jako domyślne dane uwierzytelniające dla wszystkich baz danych.
Nazwa bazy danych jest używana tylko przez MongoDatabase.Create, który wywołuje MongoServer.Create, a następnie po prostu wywołuje GetDatabase za Ciebie.
A więc:
var connectionString = "mongodb://localhost/database";
var database = MongoDatabase.Create(connectionString);
to tylko skrót do:
var connectionString = "mongodb://localhost";
var server = MongoServer.Create(connectionString);
var database = server.GetDatabase("database");
W rzeczywistości nie następuje uwierzytelnianie, dopóki nie spróbujesz użyć bazy danych.