SqlConnection和SqlCommand with using语句

时间:2017-08-01 15:24:38

标签: c# sqlconnection sqlcommand

我连接到这样的数据库设置来调用存储过程。我只是想知道这是否是最好的方法。 我有两个用于sqlConnection的语句和一个用于sqlCommand的语句(我不确定是否需要它)

using (SqlConnection con1 = new SqlConnection(conString1))
{
    using (SqlCommand cmd1 = new SqlCommand())
    {
        cmd1.Connection = con1;

        cmd1.CommandType = CommandType.StoredProcedure;
        cmd1.CommandText = "updateVendorEstNo";
        cmd1.Parameters.AddWithValue("@plantNameNew", vPlantName.Value.ToString().Trim());

        var result = cmd1.Parameters.Add("@result", SqlDbType.Int);
        result.Direction = ParameterDirection.Output;
        var resultDesc = cmd1.Parameters.Add("@resultDesc", SqlDbType.VarChar, 100);
        resultDesc.Direction = ParameterDirection.Output;

        con1.Open(); // open connection
        cmd1.ExecuteNonQuery();

        res = result.Value.ToString().Trim();
        resDesc = resultDesc.Value.ToString().Trim();
    }                
}

我最大的问题是我在做什么:

using (SqlCommand cmd1 = new SqlCommand())

现在这样做是否很好..或者应该更像是,

using (SqlCommand cmd1 = new SqlCommand("updateVendorEstNo",con1))

1 个答案:

答案 0 :(得分:3)

我认为你拥有它的方式很好,因为the using statement will ensure that the object is disposed of either way