qq_23458699 于 2014.12.17 10:26 提问
- 关于ASP.NET 调用存储过程传参数的问题
-
///
/// 执行存储过程
///
/// 存储过程名
/// 存储过程参数
/// SqlDataReader
public static SqlDataReader RunProcedure(string storedProcName, IDataParameter[] parameters)
{
SqlConnection connection = OpenSqlConnection();
SqlCommand command = new SqlCommand();
try
{
command.CommandText = storedProcName;
command.Connection = connection;
if (parameters != null)
{
foreach (IDataParameter parm in parameters)
{
command.Parameters.Add(parm);
}
}
command.CommandType = CommandType.StoredProcedure;
if (connection.State != ConnectionState.Open)
{
connection.Open();
}
SqlDataReader returnReader = command.ExecuteReader(CommandBehavior.CloseConnection);
command.Parameters.Clear();
return returnReader;
}
catch (Exception e)
{
//e.Message;
connection.Close();
throw;
}
}以上是我写的调用存储过程的方法 如我我页面上要调用存储过程去执行一个参数为1的操作 该怎么传这个参数呢
-
-
save4me
2014.12.17 10:57
- 已采纳
IDataParameter[] parameters = new IDataParameter[1];
parameters[0] = new Parameter("@参数名称", DbType.Int32, 1);
RunProcedure("存储过程名称", parameters);
-
- qq_23458699 谢谢 弄好了
- 3 年多之前 回复
-
-
q107770540
2014.12.17 10:31
IDataParameter[] parameters = new IDataParameter[]{ new SqlParameter(...) }
RunProcedure("storename",parameters);
-
- qq_23458699 new SqlParameter(...)里面能写给我看看吗
- 3 年多之前 回复