SqlParameter 已包含在另一个 SqlParameterCollection.3 中
The SqlParameter is already contained by another SqlParameterCollection.3
这是我的第一个问题:SqlParameter 已包含在另一个 SqlParameterCollection 中。
SqlDataReader rdr[0] 与对象给我带来 table 列值。
public ArrayList[] GetInfo(string sqlCommand, SqlParameter sqlParameter)
{
ArrayList[] drawingInfo = new ArrayList[7];
drawingInfo[0] = new ArrayList();
drawingInfo[1] = new ArrayList();
drawingInfo[2] = new ArrayList();
drawingInfo[3] = new ArrayList();
drawingInfo[4] = new ArrayList();
drawingInfo[5] = new ArrayList();
drawingInfo[6] = new ArrayList();
using (SqlConnection con = new SqlConnection("connectionAdres"))
{
SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
cmd.CommandText = sqlCommand;
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add(sqlParameter);
con.Open();
SqlDataReader rdr = cmd.ExecuteReader();
while (rdr.Read())
{
drawingInfo[0].Add(rdr[0]);
drawingInfo[1].Add(rdr[1]);
drawingInfo[2].Add(rdr[2]);
drawingInfo[3].Add(rdr[3]);
drawingInfo[4].Add(rdr[4]);
drawingInfo[5].Add(rdr[5]);
drawingInfo[6].Add(rdr[6]);
}
return drawingInfo;
}
}
您不能使用同一个对象作为参数调用两次 GetInfo 方法。每次只将值传递给该方法并构建 SqlParameter。与使用 SqlCommand 相同。
这是我的第一个问题:SqlParameter 已包含在另一个 SqlParameterCollection 中。 SqlDataReader rdr[0] 与对象给我带来 table 列值。
public ArrayList[] GetInfo(string sqlCommand, SqlParameter sqlParameter)
{
ArrayList[] drawingInfo = new ArrayList[7];
drawingInfo[0] = new ArrayList();
drawingInfo[1] = new ArrayList();
drawingInfo[2] = new ArrayList();
drawingInfo[3] = new ArrayList();
drawingInfo[4] = new ArrayList();
drawingInfo[5] = new ArrayList();
drawingInfo[6] = new ArrayList();
using (SqlConnection con = new SqlConnection("connectionAdres"))
{
SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
cmd.CommandText = sqlCommand;
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add(sqlParameter);
con.Open();
SqlDataReader rdr = cmd.ExecuteReader();
while (rdr.Read())
{
drawingInfo[0].Add(rdr[0]);
drawingInfo[1].Add(rdr[1]);
drawingInfo[2].Add(rdr[2]);
drawingInfo[3].Add(rdr[3]);
drawingInfo[4].Add(rdr[4]);
drawingInfo[5].Add(rdr[5]);
drawingInfo[6].Add(rdr[6]);
}
return drawingInfo;
}
}
您不能使用同一个对象作为参数调用两次 GetInfo 方法。每次只将值传递给该方法并构建 SqlParameter。与使用 SqlCommand 相同。