“仅分配,呼叫增量...”关闭连接时出错

时间:2014-12-06 16:32:12

标签: c# error-handling sqlconnection

我在C#上有点生疏,无法弄清楚为什么我会在AWConn.Close;收到消息:

  

只有赋值,调用,递增,递减和新对象表达式才能用作语句

我做错了什么?这是代码。

    private void Form1_Load(object sender, EventArgs e)
    {
        SqlConnection AWConn = new SqlConnection("Driver={SQL Server Native Client 10.0};Server=MyServer/MyInstance; Database=MyDB;Integrated Security=true;");

        try
        {
            AWConn.Open();
        }
        catch (Exception ex)
        {
            Console.WriteLine(ex.ToString());
        }

        // Database stuff here...

        AWConn.Close;


    }

我确信这看起来像一个愚蠢的问题,但就像我说它已经有一段时间了。

1 个答案:

答案 0 :(得分:2)

SqlConnection.Close()是一种方法。你需要称之为;

AWConn.Close();

但不是这样,只需使用using statement自动处理数据库连接和对象。

using(SqlConnection AWConn = new SqlConnection(conString))
{
    try
    {
        AWConn.Open();
    }
    catch(SqlException ex)
    {
        Console.WriteLine(ex.ToString());
    }
}

而不是捕获Exception,而是捕获SqlException,而.Open()方法只能抛出异常类型。