C#连接有用户名密码验证的MongoDB
清泛原创
MongoDB连接字符串格式如下:mongodb://[username:password@]hostname[:port][/[database][?options]]
使用MongoVUE输入用户名密码能够连接MongoDB,但是使用C#如下代码连接时出现异常“Invalid credentials for database 'admin'”:
MongoServer server = new MongoClient("mongodb://username:password@host:port").GetServer();
MongoDatabase db = server.GetDatabase("admin");
解决方法:
即使在 admin 数据库中创建了用户,登录上去后还是不能访问其他数据库的,这时需要在用户名后加上 "(admin)" 标识,如下:
MongoServer server = new MongoClient("mongodb://username(admin):password@host:port").GetServer();
完美解决,至此!
使用MongoVUE输入用户名密码能够连接MongoDB,但是使用C#如下代码连接时出现异常“Invalid credentials for database 'admin'”:
MongoServer server = new MongoClient("mongodb://username:password@host:port").GetServer();
MongoDatabase db = server.GetDatabase("admin");
解决方法:
即使在 admin 数据库中创建了用户,登录上去后还是不能访问其他数据库的,这时需要在用户名后加上 "(admin)" 标识,如下:
MongoServer server = new MongoClient("mongodb://username(admin):password@host:port").GetServer();
完美解决,至此!