存储过程输出OUTPUT
存储过程输出一个OUTPUT参数,c#怎么接收?
1 public int AddToAuthorization_Prg_ShortCut(string admin,int OpID, int PrgID, bool IsShortCut, int DisplayOrder) 2 { 3 SetConnectionString(admin); 4 SqlParameter[] parm = 5 { 6 new SqlParameter("@OpID",OpID), 7 new SqlParameter("@PrgID",PrgID), 8 new SqlParameter("@HideMe",IsShortCut), 9 new SqlParameter("@DisplayOrder",DisplayOrder), 10 new SqlParameter("@NewAutoNo",DbType.Int32) 11 }; 12 parm[4].Direction = ParameterDirection.Output; 13 DBUtility.DbHelperSQL.RunProcedure("AddToAuthorization_Prg_ShortCut", parm); 14 return Convert.ToInt32(parm[4]); 15 }
与普通执行存储过程的方法不同的是:
最后一个参数@NewAutoNo在存储过程里面是输出参数,只要定义类型即可,而且要声明为输出参数,即
parm[4].Direction = ParameterDirection.Output
最后返回
Convert.ToInt32(parm[4])即可