MongoDB.local SF, Jan 15: See the speaker lineup & ship your AI vision faster. Use WEB50 to save 50%
Find out more >
Docs 菜单
Docs 主页
/ /

创建 MongoClient

本指南介绍如何使用.NET/ C#驱动程序连接到MongoDB实例或副本集部署。

连接到MongoDB 部署需要以下组件:

  • 连接 URI,也称为连接字符串,它告诉.NET/ C#驱动程序要连接到哪个MongoDB 部署。

  • MongoClient对象,用于创建并维持与MongoDB 部署的连接,并允许您执行数据操作。

您还可以在这些组件中指定连接设置,以自定义.NET/ C#驱动程序在连接到MongoDB时的行为方式。

本指南向您介绍如何创建连接 URI 并使用 MongoClient对象连接到MongoDB。

标准连接 URI 包括以下组件:

组件
说明

mongodb://

必需。将其标识为标准连接格式中字符串的前缀。

username:password

可选。身份验证凭证。如果包含这些内容,客户端将根据 authSource 中指定的数据库对用户进行身份验证。有关身份验证设置的更多信息,请参阅 身份验证机制。

host[:port]

必需。运行MongoDB 的托管和可选端口号。如果不包含端口号,驱动程序将使用默认端口 27017

/defaultauthdb

可选。 如果连接string包含 username:password@ 身份验证档案但不包含 authSource 选项,则要使用的身份验证数据库。 如果不包含此组件,客户端将根据admin数据库对用户进行身份验证。

?<options>

可选。 一个查询string ,它将特定于连接的选项指定为 <name>=<value> 对。 有关这些选项的完整说明,请参阅指定连接选项

有关创建连接string 的更多信息,请参阅 MongoDB Server文档中的 连接字符串 。

要创建与 MongoDB 的连接,请将连接 URI 传递给 MongoClient 构造函数。在以下示例中,驱动程序使用示例连接 URI 连接到在 localhost 的端口 27017 上运行的MongoDB 部署:

const string uri = "mongodb://localhost:27017/";
var client = new MongoClient(uri);

当您使用 MongoClient 时,我们建议为其指定单例生命周期作用域。但是,这可能会导致使用过多内存和未释放的资源。

在 v3.0 及更高版本的.NET/ C#驱动程序中,新的 MongoClient 实现 IDisposable,以便在使用单例生命周期作用域时处置资源。此实施允许 MongoClient 类和任何实现IMongoClient 接口的类访问权限Dispose() 方法。销毁客户端后,任何成员连接都会返回 ObjectDisposedException 错误。

丢弃MongoClient 不会丢弃集群和根本的连接。要释放这些资源,请调用 。要学习;了解有关ClusterRegistry.UnregisterAndDisposeCluster() ClusterRegistry.UnregisterAndDisposeCluster()方法的更多信息,请参阅.NET/ C#驱动程序API文档中的 UnregisterAndDisposeCluster()。

您可以通过以下方式配置连接:

  • 在连接 URI 中指定参数

  • MongoClientSettingsMongoUrlBuilder对象上指定设置

如需学习;了解有关配置连接的更多信息,请参阅“指定连接选项”指南。

要学习;了解有关使用.NET/ C#驱动程序创建 MongoClient对象的更多信息,请参阅以下API文档:

后退

开始体验

在此页面上