我正在运行一个C#程序,它连接到它自己的网络上的本地MySQL服务器。一切正常,直到我失去互联网,然后尽管被IP引用,C#也不会连接到服务器(参见下面的代码)。
public bool IsConnect()
{
bool result = true;
if (Connection == null)
{
if (String.IsNullOrEmpty(databaseName))
result = false;
string connstring = string.Format("Server=192.168.0.254; database={0}; UID=show; password=", "");
try
{
connection = new MySqlConnection(connstring);
connection.Open();
result = true;
}
catch (MySql.Data.MySqlClient.MySqlException ex)
{
switch (ex.Number)
{
case 0:
// MessageBox.Show("Cannot connect to server. Contact administrator");
break;
case 1045:
// MessageBox.Show("Invalid username/password, please try again");
break;
}
}
}
return result;
}
答案 0 :(得分:0)
您没有检查您的databaseName。
public bool IsConnect()
{
bool result = true;
if (Connection == null)
{
if (String.IsNullOrEmpty(databaseName))
result = false;
string connstring = string.Format("Server=192.168.0.254; database={0}; UID=show; password=", "");
try
{
//Database name is not empty
if(result)
{
connection = new MySqlConnection(connstring);
connection.Open();
result = true;
}
}
catch (MySql.Data.MySqlClient.MySqlException ex)
{
switch (ex.Number)
{
case 0:
// MessageBox.Show("Cannot connect to server. Contact administrator");
break;
case 1045:
// MessageBox.Show("Invalid username/password, please try again");
break;
}
}
}
return result;
}
答案 1 :(得分:0)
即将发布更多信息但突然找到答案。
添加
跳过名称解析
到my.cnf停止MySQL尝试通过DNS解析客户端导致我的问题