带返回值的存储过程
有一个SQL   server2000的数据库 
 表Students中有2个字段   StudentID         StudentSex 
 定义一个CheckID的存储过程 
 代码如下:   
 CREATE   PROCEDURE   CheckID 
          @StudentID   char(9) 
 AS 
 BEGIN 
          IF   ((SELECT   COUNT(*) 
          FROM   Students 
          WHERE   StudentID   =   @StudentID   )   >    1) 
          return   1   
 ELSE 
          return   0 
 END 
 GO     
 如何在C#中定义一个string   temp   让它等于这个存储过程的return的值   
 希望高手帮我解决下      谢谢了
------解决方案--------------------用输出参数吧,像函数一样return我还没做过不知道可以不
------解决方案--------------------将参数的Direction属性设置为ParameterDirection.ReturnValue即可
------解决方案--------------------建立使用out参数传递 
 参考 
 SqlParameter p1 = new SqlParameter( "@StudentID  ", SqlDbType.Char,9 ); 
 p1.Value=具体的值; 
 cmd.Parameters.Add(p1); 
 SqlParameter p2 = new SqlParameter( "@returnVal ", SqlDbType.Int); 
 cmd.Parameters.Add(p2); 
 cmd.ExecuteNonQuery(); 
 conn.Close(); 
 Response.Write(p2.Value); 
 样就可以访问你out参数的值了   
 存储过程修改为 
 CREATE PROCEDURE CheckID 
    @StudentID char(9),@returnVal int 
 AS 
 BEGIN 
    IF ((SELECT COUNT(*) 
    FROM Students 
    WHERE StudentID = @StudentID ) >  1) 
    set @returnVal=1   
 ELSE 
    set @returnVal= 0 
 END 
 GO     
         cmd.ExecuteNonQuery(); 
         conn.Close(); 
         Response.Write(p2.Value);