客户提交数据库连接的配置,然后验证数据库连接是否成功
如下代码:
string source="server="+ txt1.Text +";uid="="+ txt2.Text +";pwd="="+ txt1.Text +";database=master";
SqlConnection Conn=new SqlConnection(source);            
Conn.Open();
if(Conn.State.ToString()=="Open")
{
MessageBox.Show("连接");
Conn.Close();
}
else
{
MessageBox.Show("未连接");
return;
}
现在问题是如果source字符串出错,那么“if(Conn.State.ToString()=="Open")”这句直接抛出错了,不能执行下面的弹出对话框,怎么解决?

解决方案 »

  1.   

    试试这样写:
    string source="server='"+ txt1.Text +"';uid="='"+ txt2.Text +"';pwd="='"+ txt1.Text +"';database=master";
      

  2.   

    string source="server='"+ txt1.Text +"';uid="='"+ txt2.Text +"';pwd="='"+ txt1.Text +"';database=master";这样不行的
    这里的关键是在当source字符串不是SQL server的正确连接字符串时
    Conn.Open()打不开,Conn.State.ToString()报错
    记得以前VB的时候用Conn.State=1 或 0来判断,可是C#不能用,
    怎么判断Conn.Open()是否打开了呢?如果没打开怎么判断出来?
      

  3.   

    if (conn.State==ConnectionState.Open)
    {
    this.conn.Close();
    }
      

  4.   

    conn.State ==System.Data.ConnectionState.Closed
      

  5.   

    还是报错
    “应用程序发生为处理异常”
    错误位置仍然在Conn.State处
      

  6.   

    连接字符串:
    string source="server="+ txt1.Text+";uid="+ txt2.Text+";pwd="+ txt1.Text +";database=master";
      

  7.   

    看了很多代码,
    conn.State==ConnectionState.Open方式能解决,不知道我错在哪里?
    不钻了
    用TRY{}得了
    谢谢几位帮忙
      

  8.   

    string source="server="+ txt1.Text +";uid="+ txt2.Text +";pwd="+ txt1.Text +";database=master";
    try
    {
    SqlConnection Conn=new SqlConnection(source);      
    }
    catch
    {
      msgbox "测试字符串出错!"
    }      
    Conn.Open();
    if(Conn.State.ToString()=="Open")
    {
    MessageBox.Show("连接");
    Conn.Close();
    }
    else
    {
    MessageBox.Show("未连接");
    return;
    }
    这样应该可以吧!上面uid="+ txt2.Text +";pwd="+ 处好像有错!
      

  9.   

    你的连接字符串错误了  你先把后面的注释掉,把连接字符串 MessageBox.Show("source"); 看看 或者换成这个看看string source="Server="+ txt1.Text +";User ID="+ txt2.Text +";Password="+ txt1.Text +";Database=master";Server=Aron1;Database=pubs;User ID=sa;Password=asdasd;Trusted_Connection=False