還有另一種方式與對管理數據庫身份驗證連接。
的缺點是,你必須建立整個連接對象,而不是單純的包裝所有的信息在一個連接字符串。
而是一個連接字符串像
var connectionString = "mongodb://localhost";
var client = new MongoClient(connectionString);
你可以創建一個MongoClientSettings對象實例化MongoClient的,設置憑據(以及任何其他連接設置一起)和實例的客戶端通過該對象
string authenticationDB = "admin"
string authenticationUsername = "user"
string authenticationPassword = "pass"
MongoClientSettings settings = new MongoClientSettings();
settings.Credentials = new[] { MongoCredential.CreateMongoCRCredential(authenticationDB, authenticationUsername, authenticationPassword) };
settings.Servers = new[] { new MongoServerAddress("host_1"), new MongoServerAddress("host_2"), new MongoServerAddress("host_3") };
settings.ConnectionMode = ConnectionMode.ReplicaSet;
var client = new MongoClient(settings);
var db = client.GetServer().GetDatabase(database);
http://docs.mongodb.org/ecosystem/tutorial/authenticate-with-csharp-driver/
[Mongodb C#驅動程序可能重複 - 無法使用管理員身份驗證訪問其他數據庫(http://stackoverflow.com/questions/6764078/mongodb-c-sharp-driver-cant-use-admin-authentication-to-access-other-database) –