谁给看看这个方法有没有问题
public string ExecuteNonQuery_dao(string proname, params SqlParameter[] commandParameters)
{
//加入事务处理
//using (TransactionScope TS = new TransactionScope())
//{
SqlCommand cmd = new SqlCommand();
SqlParameter returnvalue = new SqlParameter("@reutrnValue", SqlDbType.VarChar, 100);
returnvalue.Direction = ParameterDirection.Output;
cmd.Parameters.Add(returnvalue);
PrepareCommand(cmd, con, null, CommandType.StoredProcedure, proname, commandParameters);
int val = cmd.ExecuteNonQuery();
//TS.Complete();
cmd.Parameters.Clear();
return returnvalue.Value.ToString();
//}
}
private static void PrepareCommand(SqlCommand cmd, SqlConnection conn, SqlTransaction trans, CommandType cmdType, string cmdText, SqlParameter[] cmdParms)
{
if (conn.State != ConnectionState.Open)
{
conn.Close();
conn.Open();
}
cmd.Connection = conn;
cmd.CommandText = cmdText;
if (trans != null)
cmd.Transaction = trans;
cmd.CommandType = cmdType;
if (cmdParms != null)
{
foreach (SqlParameter parm in cmdParms)
cmd.Parameters.Add(parm);
}
}
用存储过程批量导入数据,偶尔会报错,意思是某个连接未关闭,请各位给看看是这里的问题吗?