MongoDB C#驱动程序MongoCredential对象

MongoDB C#驱动程序MongoCredential对象,c#,mongodb,mongodb-.net-driver,C#,Mongodb,Mongodb .net Driver,MongoDB驱动程序的文档似乎与从NuGet获取的实际驱动程序不同 更具体地说,记录在案的“MongoCredentials”(复数)并不存在,而只有“MongoCredential”(单数)。此外,MongoServer.GetDatabase似乎没有接受MongoCredential的构造函数,只有MongoDatabaseSettings(以及命名数据库的字符串),而且我看不到任何明显的方法可以为MongoDatabaseSettings对象指定MongoCredential对象 我还没

MongoDB驱动程序的文档似乎与从NuGet获取的实际驱动程序不同

更具体地说,记录在案的“MongoCredentials”(复数)并不存在,而只有“MongoCredential”(单数)。此外,MongoServer.GetDatabase似乎没有接受MongoCredential的构造函数,只有MongoDatabaseSettings(以及命名数据库的字符串),而且我看不到任何明显的方法可以为MongoDatabaseSettings对象指定MongoCredential对象

我还没有在谷歌上找到任何与我在驱动程序中找到的对象相关的例子,只有那些与(过时的?)官方文档一致的例子

我使用的驱动程序(在NuGet包管理器中)称为“官方MongoDB C#driver”

总结一下:如何在C#driver中提供凭证

我也在使用来自NuGet的1.8.3版

事实上,这似乎已经过时了

然而,这个结论是正确的;那里有一个单数的条目

您可以使用静态工厂方法(或)之一创建凭据

接下来,为了使用凭据,您不能在
GetDatabase()
调用中指定它们,但在前面,如果您愿意:

var db1Credential = MongoCredential.CreateMongoCRCredential("db1", "uid", "pwd");
var db2Credential = MongoCredential.CreateMongoCRCredential("db2", "uid", "pwd");

var server = new MongoServer(
    new MongoServerSettings
        {
            Server = new MongoServerAddress("localhost", 27017),
            Credentials = new[]
                            {
                                db1Credential,
                                db2Credential
                            }
        });