SqlDataSource怎么取得存储过程中的返回值
SqlDataSource怎么取得存储过程中的返回值
[解决办法]
public SqlCommand CreateCommand(string procName,SqlParameter[] param)
{
Open();
SqlCommand cmd=new SqlCommand(procName,myConnection);
cmd.CommandType=CommandType.StoredProcedure;
if(param!=null)
{
foreach(SqlParameter paramlist in param)
{
cmd.Parameters.Add(paramlist);
}
}
cmd.Parameters.Add(new SqlParameter(RETURNVALUE,SqlDbType.Int,4,ParameterDirection.ReturnValue,false,0,0,string.Empty,DataRowVersion.Default,null));
return cmd;
}
public int RunProc(string procName)
{
SqlCommand cmd=CreateCommand(procName,null);
try
{
cmd.ExecuteNonQuery();
}
catch(Exception ex)
{
SystemError.ErrorMessage(ex.Message);
}
Dispose();
Close();
return (int)cmd.Parameters[RETURNVALUE].Value;
}
[解决办法]
正始你存儲過程返回的值@flag
---------取得返回的值﹕
int returnVariable = Command.Parameters[ "@flag "].Value;
or
int returnVariable = int.Parse(Command.Parameters[ "@flag "].Value.Tostring());