gpt4 book ai didi

c# - 在 C# 中使用 MongoClientSettings 初始化 MongoClient

转载 作者:IT老高 更新时间:2023-10-28 13:20:29 29 4
gpt4 key购买 nike

我正在尝试从 Mongo 2.0 驱动程序初始化 MongoClient,如下所示:

MongoClientSettings settings = new MongoClientSettings();
settings.WaitQueueSize = int.MaxValue;
settings.WaitQueueuTimeout = new TimeSpan(0,2,0);
settings.MinConnectionPoolSize = 1;
settings.MaxConnectionPoolSize = 25;
settings.Server = new MongoServerAddress("mongodb://localhost");
client = new MongoClient(settings)

但是,当我现在尝试使用此代码插入文档时:

db = client.GetDatabase("local");
col = db.GetCollection<BsonDocument>(collectionName);
col.InsertOneAsync(new BsonDocument().Add(new BsonElement("id",BsonValue.Create(1)))).Wait();

它什么也没做。它没有被插入,也没有错误消息(尽管一段时间后 System.Timeout 的第一次机会异常出现在输出中)。如果我用

初始化客户端
client = new MongoClient("mongodb://localhost")

它确实可以按预期工作并上传文档。

我希望客户端能够处理非常高的写入吞吐量,所以我首先尝试了这些设置。是我设置了一些错误还是有其他问题?

编辑:经过更多测试,我确实遇到了 System.Timeout 异常。

最佳答案

我可以重现这个问题,只是在我的错误消息中,在大约 40 行文本的某处隐藏了一些更有用的信息:

No such host is known

原来是MongoServerAddress only expects the hostname, not the protocol :

settings.Server = new MongoServerAddress("localhost");

关于c# - 在 C# 中使用 MongoClientSettings 初始化 MongoClient,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30187424/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com