【发布时间】:2014-02-15 08:24:11
【问题描述】:
我正在使用 MySqlConnection 访问远程数据库。它在大多数计算机上都能正常工作。
但是。现在我遇到了 MySqlConnection.Open() 调用永远挂起的情况。我添加了一些写语句来查看它挂在哪里。请参阅下面的代码。语句“_Debug.Write("OpenConnection", "连接成功。");"永远达不到。也不抛出异常。我试图以管理员身份运行该应用程序,但它仍然挂在这里。 这一定是环境问题,因为这在所有其他计算机上都可以正常工作。 (我使用的是 .NET Framework 3.5)
有人对此有解决方案吗?但愿如此。 亲切的问候 罗伯·拜杰 -------------------------------------------------- --我的c#源代码 私有 MySqlConnection 连接; 私有字符串 _server = "Server=5.666.82.191;Database=unknown;Uid=me;Pwd=mypasswd";
public void getUserData()
{
using (connection = new MySqlConnection(_server))
{
if (OpenConnection())
{
getData();
connection.Close();
}
}
}
private bool OpenConnection()
{
bDatabaseConnectionSucceeded = false;
try
{
_Debug.Write("OpenConnection", "Opening connection now!!");
connection.Open();
bDatabaseConnectionSucceeded = true;
_Debug.Write("OpenConnection", "Connection succeeded.");
return true;
}
catch (MySqlException ex)
{
_Debug.Write("OpenConnection", "Connection failed." + ex.Message);
Debug.WriteLine(ex.Message);
return false;
}
}
【问题讨论】:
-
如果抛出
Exception怎么办......而不是MySqlException? -
可能是连接字符串错误。它最终会“超时”吗?
-
不,它没有。它无限期地挂起。我不知道为什么。我认为默认超时是 30 秒。
-
你能在
getData();中展示你在做什么吗?
标签: c# mysqlconnection