string address = "";
string auID = "";
DataTable table = null;
try
{
SqlConnection conn = AdoDB.BuildConnection();
conn.Open();
SqlCommand cmd = new SqlCommand("ERPCRM_osUserAu_NewRoles", conn);
cmd.Parameters.Add("@userid", userid);
cmd.Parameters.Add("@auid", SqlDbType.VarChar, 100); cmd.Parameters["@auid"].Direction = ParameterDirection.Output;
SqlDataAdapter ad = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
ad.Fill(ds, "table1"); 这里报异常,是不是写法不对???
auID = Convert.ToString(cmd.Parameters["@auid"].Value); table = ds.Tables[0];
conn.Close();
}
catch (Exception ex)
{
string mess = ex.ToString();
throw;
}我存储过程是返回一个记录集和一个输出参数 测试过肯定没问题。。请高手指点!!
string auID = "";
DataTable table = null;
try
{
SqlConnection conn = AdoDB.BuildConnection();
conn.Open();
SqlCommand cmd = new SqlCommand("ERPCRM_osUserAu_NewRoles", conn);
cmd.Parameters.Add("@userid", userid);
cmd.Parameters.Add("@auid", SqlDbType.VarChar, 100); cmd.Parameters["@auid"].Direction = ParameterDirection.Output;
SqlDataAdapter ad = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
ad.Fill(ds, "table1"); 这里报异常,是不是写法不对???
auID = Convert.ToString(cmd.Parameters["@auid"].Value); table = ds.Tables[0];
conn.Close();
}
catch (Exception ex)
{
string mess = ex.ToString();
throw;
}我存储过程是返回一个记录集和一个输出参数 测试过肯定没问题。。请高手指点!!
ad.Fill(ds, "table1"); 对的。或者你不指定名称,直接换成ad.Fill(ds);看看是否报错。估计是你前面的代码写的有问题。导致无法Fill
你是要执行存储过程吗?
那么添加一句代码:
SqlCommand cmd = new SqlCommand("ERPCRM_osUserAu_NewRoles", conn);
cmd.CommandType=CommandType.StoredProcedure ;
报什么错误
(SqlConnection conn = new SqlConnection(""))
{
conn.Open();
SqlCommand MyCommand = new SqlCommand("ERPCRM_osUserAu_NewRoles", conn);
MyCommand.CommandType = CommandType.StoredProcedure;
MyCommand.Parameters.Add(new SqlParameter("@a", SqlDbType.Int));
MyCommand.Parameters["@a"].Value = 20;
MyCommand.Parameters.Add(new SqlParameter("@b", SqlDbType.Int));
MyCommand.Parameters["@b"].Direction = ParameterDirection.Output;
MyCommand.ExecuteNonQuery();
Response.Write(MyCommand.Parameters["@b"].Value.ToString());
}