Как получить возвращаемое значение из хранимой процедуры SQL?
Привет,
Я хочу получить возвращаемое значение из хранимой процедуры,
Я не могу его получить,
Ниже приведен мой код Sql и C#.
Хранимая Процедура Ms Sql
ALTER PROCEDURE mat.CheckRequestStatus @RequestFrom VARCHAR(64), @RequestTo VARCHAR(64), @RequestType INTEGER, AS BEGIN DECLARE @RequestStatus INTEGER SET @RequestStatus=(SELECT ISNULL((SELECT DISTINCT RequestStatus FROM tblRequest WHERE RequestFrom=@RequestFrom AND @RequestTo=@RequestTo), 0)) IF( @RequestStatus=0) BEGIN SET @RequestStatus=0 RETURN @RequestStatus END RETURN @RequestStatus END
Код C#
public int CheckRequestStatus(string RequestFrom, string RequestTo,int RequestType) { /* function CheckInterestReuest Returns a value * '0' for Request Not Exist * '1' for Pending Request * '2' for Accepet * '3' for Reject */ int RequestStatus = 0; try { if (sqlcon.State == ConnectionState.Closed) { sqlcon.Open(); } SqlCommand cmd = new SqlCommand("mat.CheckRequestStatus", sqlcon); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@RequestFrom", RequestFrom); cmd.Parameters.AddWithValue("@RequestTo", RequestTo); cmd.Parameters.AddWithValue("@RequestType", RequestType); SqlParameter RuturnValue = new SqlParameter("@RequestStatus", SqlDbType.Int); RuturnValue.Direction = ParameterDirection.Output; cmd.Parameters.Add(RuturnValue); cmd.ExecuteNonQuery(); RequestStatus = (int)cmd.Parameters["@RequestStatus"].Value; } catch { } finally { sqlcon.Close(); } return RequestStatus; }
Что я уже пробовал:
Я пытаюсь получить возвращаемое значение из хранимой процедуры