现在的位置: 首页 > 综合 > 正文

使用有返回参数的存储过程

2013年04月11日 ⁄ 综合 ⁄ 共 2229字 ⁄ 字号 评论关闭

cs里面定义

 public int  intRunProc(string procName,string [] prams,string[] pramsValues)
    {
        try
        {
            this.OpenDB();
            SqlCommand comm = new SqlCommand(procName, conn);
            comm.CommandType = CommandType.StoredProcedure;
            for (int i = 0; i < prams.GetLength(0) - 1; i++)
            {
               

               
                    if (pramsValues[i] == null)
                    {
                        comm.Parameters.AddWithValue(prams[i], System.DBNull.Value);
                    }
                    else
                    {
                        comm.Parameters.AddWithValue(prams[i], pramsValues[i]);
                    }
           
            }
            SqlParameter sqlParameter1 = new SqlParameter();
            sqlParameter1.Direction = ParameterDirection.Output;
            sqlParameter1.ParameterName = prams[prams.GetLength(0) - 1];
            sqlParameter1.Value = 0;
            comm.Parameters.Add(sqlParameter1);

            comm.ExecuteNonQuery();
            return Convert.ToInt32(sqlParameter1.Value.ToString());
            //return sqlParameter1.Value.ToString();
        }
        catch (Exception err)
        {
            throw err;
        }
        finally
        {
            this.CloseDB();
        }

       

    } 

 

调用

 #region 审核驳回

        if (al_Back.Count != 0)
        {

            string[] str_Back_canshus = new string[3];
            string[] str_Back_canshuvalues = new string[3];
            str_Back_canshus[0] = "@MatchID";
            str_Back_canshus[1] = "@Act";
            str_Back_canshus[2] = "@result";

           
            for (int i = 0; i <= al_Back.Count - 1; i++)
            {
                str_Back_canshuvalues[0] = al_Back[i].ToString();
                str_Back_canshuvalues[1] = "0";
                str_Back_canshuvalues[1] = "0";
                result = conn.intRunProc("BetAdmin_MatchsResultAct1", str_Back_canshus, str_Back_canshuvalues);

                switch (result)
                {
                    case 0: sp_msg = sp_msg + al_Back[i].ToString() + "审核驳回成功!<br>";
                        break;
                    case 1: sp_msg = sp_msg + al_Back[i].ToString() + "审核驳回失败,该比赛不是未审核状态!<br>";
                        break;
                    default: sp_msg = sp_msg + al_Back[i].ToString() + "审核驳回失败,未明错误!<br>";
                        break;
                }
            }
        }

        #endregion

抱歉!评论已关闭.