如何在 MongoDB 连接期间解析 System.TimeoutException?
How to resolve a System.TimeoutException during MongoDB connection?
我已经开始使用 MongoDB .Net driver 将 WPF 应用程序连接到托管在 MongoLabs 上的 MongoDB 数据库。
但是我创建的以下加载连接的方法(在 MainViewModel 的构造函数上调用)在下面方法中标记的行上引发了超时异常。
我试图通过添加 MongoException 类型的异常检查来进一步解决错误,但无济于事。还根据文档检查了连接字符串是否有效,看起来是这样:(出于安全考虑,密码已加星标)
private const string connectionString = "mongodb://<brianVarley>:<********>@ds048878.mongolab.com:48878/orders";
具体抛出的错误如下:
An exception of type 'System.TimeoutException' occurred in mscorlib.dll
完成错误Link:http://hastebin.com/funanodufa.tex
有人知道我的连接方法超时的原因吗?
public List<Customer> LoadCustomers()
{
var client = new MongoClient(connectionString);
var database = client.GetDatabase("orders");
//Get a handle on the customers collection:
var collection = database.GetCollection<Customer>("customers");
try
{
//Timeout error thrown at this line:
customers = collection.Find(new BsonDocument()).ToListAsync().GetAwaiter().GetResult();
}
catch(MongoException ex)
{
//Log exception here:
MessageBox.Show("A handled exception just occurred: " + ex.Message, "Connection Exception", MessageBoxButton.OK, MessageBoxImage.Warning);
}
return customers;
}
通过重新编辑我的连接字符串解决了这个错误。我在我的连接字符串中错误地留下了这两个符号,用户名和密码凭据之间的“<”和“>”。
正确格式:
"mongodb://brianVarley:password@ds054118.mongolab.com:54118/orders";
格式不正确:
"mongodb://<brianVarley>:<password;>@ds054118.mongolab.com:54118/orders";
我已经开始使用 MongoDB .Net driver 将 WPF 应用程序连接到托管在 MongoLabs 上的 MongoDB 数据库。
但是我创建的以下加载连接的方法(在 MainViewModel 的构造函数上调用)在下面方法中标记的行上引发了超时异常。
我试图通过添加 MongoException 类型的异常检查来进一步解决错误,但无济于事。还根据文档检查了连接字符串是否有效,看起来是这样:(出于安全考虑,密码已加星标)
private const string connectionString = "mongodb://<brianVarley>:<********>@ds048878.mongolab.com:48878/orders";
具体抛出的错误如下:
An exception of type 'System.TimeoutException' occurred in mscorlib.dll
完成错误Link:http://hastebin.com/funanodufa.tex
有人知道我的连接方法超时的原因吗?
public List<Customer> LoadCustomers()
{
var client = new MongoClient(connectionString);
var database = client.GetDatabase("orders");
//Get a handle on the customers collection:
var collection = database.GetCollection<Customer>("customers");
try
{
//Timeout error thrown at this line:
customers = collection.Find(new BsonDocument()).ToListAsync().GetAwaiter().GetResult();
}
catch(MongoException ex)
{
//Log exception here:
MessageBox.Show("A handled exception just occurred: " + ex.Message, "Connection Exception", MessageBoxButton.OK, MessageBoxImage.Warning);
}
return customers;
}
通过重新编辑我的连接字符串解决了这个错误。我在我的连接字符串中错误地留下了这两个符号,用户名和密码凭据之间的“<”和“>”。
正确格式:
"mongodb://brianVarley:password@ds054118.mongolab.com:54118/orders";
格式不正确:
"mongodb://<brianVarley>:<password;>@ds054118.mongolab.com:54118/orders";