存储过程是TestProcedure,已测试正常SqlConnection myConnection=new SqlConnection("User ID=sa;Password=sd;Initial Catalog=pubs;Data Source=(local)");
SqlCommand myCommand=new SqlCommand("TestProcedure",myConnection);
//定义sql返回值参数
SqlParameter RetVal=myCommand.Parameters.Add("Retval",SqlDbType.Int,11);
//定义参数类型,是返回值类型、输入值类型或输出值类型
RetVal.Direction=ParameterDirection.ReturnValue;
//定义输入值参数
SqlParameter IdIN=myCommand.Parameters.Add("@an_idIN",SqlDbType.VarChar,80);
IdIN.Direction=ParameterDirection.Input;
//定义输出参数
SqlParameter NumTitles=myCommand.Parameters.Add("@numtitlesout",SqlDbType.VarChar,11);
NumTitles.Direction=ParameterDirection.Output; IdIN.Value="213-46-8915";
myConnection.Open();//打开连接
SqlDataReader myReader=myCommand.ExecuteReader(); while(myReader.Read())
{
Label2.Text=myReader.GetString(2);
}
myReader.Close();
myConnection.Close();可是这样报错:第 1 行: 'TestProcedure' 附近有语法错误。 
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.Data.SqlClient.SqlException: 第 1 行: 'TestProcedure' 附近有语法错误。源错误: 
行 44:  IdIN.Value="213-46-8915";
行 45:  myConnection.Open();//打开连接
行 46:  SqlDataReader myReader=myCommand.ExecuteReader();(到这段就停了)
行 47: 
行 48:  while(myReader.Read())
 请帮我看看!谢谢!

解决方案 »

  1.   

    从SqlCommand myCommand=new SqlCommand("TestProcedure",myConnection);
    这句来看你用的是存储过程吧!
    设置:
    myCommand.CommandType = CommandType.StoredProcedure
      

  2.   

    楼上说的再加上
    RetVal=myCommand.Parameters.Add("Retval",SqlDbType.Int,11);==》
    RetVal=myCommand.Parameters.Add("@Retval",SqlDbType.Int,11);
      

  3.   

    TMD,忘记了,谢谢楼上的!!!