c#mongodb.driver 连接模式有哪些

2025-04-23 14:32:07
推荐回答(2个)
回答1:

客户端连接到服务端的3种模式:

1)连接到单实例 .
var client = new MongoClient("mongodb://config.net.cn:27017"); 
2) 连接到mongo集群(多节点)
var client = new MongoClient("mongodb://config.net.cn:27017,config.net.cn:27018,config.net.cn:27019");
3)连接到集群,且支持订阅,更多特性的连接方式

var credentials = MongoCredential.CreateCredential(
databaseName: "BookAds",username: "账号",password: "密码"
);
var mongoClient = new MongoClient(new MongoClientSettings()
{
Server = new MongoServerAddress("mongodb://config.net.cn", 27022),
Credential = credentials,
ConnectionMode = ConnectionMode.Standalone,
ServerSelectionTimeout = TimeSpan.FromSeconds(15),
ClusterConfigurator = builder =>
{
builder.Subscribe(new SingleEventSubscriber(CmdStartHandlerForFindCommand));//开始执行时的回调
builder.Subscribe(new SingleEventSubscriber(CmdSuccessHandlerForFindCommand));//执行成功后的回调
}
});

参考自 config.net.cn

回答2:

在MongoDB中,文档是对数据的抽象,它被使用在Client端和Server端的交互中。所有的Client端(各种语言的Driver)都会使用这种抽象,它的表现形式就是我们常说的BSON(BinaryJSON)。BSON是一个轻量级的二进制数据格式。MongoDB能够使用BSON,并将BSON作为数据的存储存放在磁盘中。当Client端要将写入文档,使用查询等等操作时,需要将文档编码为BSON格式,然后再发送给Server端。同样,Server端的返回结果也是编码为BSON格式再放回给Client端的。