【发布时间】:2017-08-29 16:52:17
【问题描述】:
public static SqlParameter AddParameter(string parameterName,object value,SqlDbType DbType,int size)
{
SqlParameter param = new SqlParameter();
param.ParameterName = parameterName;
param.Value = value ?? (object)DBNull.Value;
param.SqlDbType = DbType;
param.Size = size;
param.Direction = ParameterDirection.Input;
return param;
}
public static DataTable ExecuteDTByProcedure(string ProcedureName ,SqlParameter[] Params)
{
SqlConnection con = new SqlConnection(ConnectionString);
SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
cmd.CommandText = ProcedureName;
cmd.Parameters.AddRange(Params);
cmd.CommandType = CommandType.StoredProcedure;
SqlDataAdapter sda = new SqlDataAdapter(cmd);
DataTable dtable = new DataTable();
try
{
sda.Fill(dtable);
}
catch (Exception ex)
{
}
finally
{
sda.Dispose();
cmd.Parameters.Clear();
cmd.Dispose();
con.Dispose();
}
return dtable;
}
}
}
错误:第 43 行:cmd.Connection = con; 第 44 行:cmd.CommandText = 过程名称; 第 45 行:cmd.Parameters.AddRange(Params); 第 46 行: 第 47 行:
SqlParameterCollection 只接受非空的 SqlParameter 类型对象。 参数名称:值
【问题讨论】:
-
嗯,错误告诉你到底出了什么问题......你显然没有提供有效的参数实例......你甚至尝试调试它吗?
-
您仍然没有展示如何使用
SqlParameter数组的示例代码(一个或多个参数可能包含空对象)。AddParameter方法的内容似乎没什么问题,但是你使用它的方式可能会抛出错误。 -
我找到了解决方案,在我的其他课程中我使用 addproducts() 函数作为
标签: asp.net