如果不加入那个返回参数 就不能正常返回值吗?>private SqlDataAdapter CreateDataAdaper(string procName, SqlParameter[] prams)
{
this.Open();
SqlDataAdapter dap = new SqlDataAdapter(procName, con);
dap.SelectCommand.CommandType = CommandType.Text; //执行类型:命令文本
if (prams != null)
{
foreach (SqlParameter parameter in prams)
dap.SelectCommand.Parameters.Add(parameter);
}
//加入返回参数
dap.SelectCommand.Parameters.Add(new SqlParameter("ReturnValue", SqlDbType.Int, 4,
ParameterDirection.ReturnValue, false, 0, 0,
string.Empty, DataRowVersion.Default, null)); //这里如果不加入这个返回参数 就不能正常返回值吗? return dap;
}
平时使用SqlDataAdapter是这样:
SqlDataAdapter sda=new SqlDataAdapter(sqlString,con);然后就 sda.Fill(ds,tbName);
如果有传入参数 就
dap.SelectCommand.Parameters.Add("@pram1",pram1);
dap.SelectCommand.Parameters.Add("@pram2",pram2);
...从来没添加过什么返回参数 程序照样跑 无BUG 这里为什么在最后还要添加一个返回参数? 这个参数能暂时存储sqlString返回来一个table?
{
this.Open();
SqlDataAdapter dap = new SqlDataAdapter(procName, con);
dap.SelectCommand.CommandType = CommandType.Text; //执行类型:命令文本
if (prams != null)
{
foreach (SqlParameter parameter in prams)
dap.SelectCommand.Parameters.Add(parameter);
}
//加入返回参数
dap.SelectCommand.Parameters.Add(new SqlParameter("ReturnValue", SqlDbType.Int, 4,
ParameterDirection.ReturnValue, false, 0, 0,
string.Empty, DataRowVersion.Default, null)); //这里如果不加入这个返回参数 就不能正常返回值吗? return dap;
}
平时使用SqlDataAdapter是这样:
SqlDataAdapter sda=new SqlDataAdapter(sqlString,con);然后就 sda.Fill(ds,tbName);
如果有传入参数 就
dap.SelectCommand.Parameters.Add("@pram1",pram1);
dap.SelectCommand.Parameters.Add("@pram2",pram2);
...从来没添加过什么返回参数 程序照样跑 无BUG 这里为什么在最后还要添加一个返回参数? 这个参数能暂时存储sqlString返回来一个table?
ParameterDirection.ReturnValue, false, 0, 0,
string.Empty, DataRowVersion.Default, null));
中 "ReturnValue"是什么东西? 谁能把值传给它? 它又以怎样的方式把值传给别人? 能说详细点吗? MSDN的解释抽象的都看不懂