我想定义一个数组用于传递存储过程参数的列表:列表如下1.参数名(如"@UserID"),string类型;
2.参数类型(如:qlDbType.VarChar),qlDbType类型(请教,这个可以不可传string类型呢?);
3.参数长度(如:50),int类型;
4.参数的传递方向(Output),string类型;参数个数不固定,要求可变.要怎么定义这个数组呢?

解决方案 »

  1.   

    他把类型 装换成统一的string 型 
    不行吗 
      

  2.   


         SqlParameter[] parms = new SqlParameter[1];
         parms[0] = new SqlParameter("@InforId", SqlDbType.Int);
         parms[0].Value = id;
      

  3.   

            static public DataSet getDataSet(string storeProcedure, Hashtable args)
            {
                DataSet ds = new DataSet();            using (SqlConnection myConnection = new SqlConnection(ConfigurationManager.ConnectionStrings["myConnection"].ConnectionString))
                {
                    SqlDataAdapter da = new SqlDataAdapter(storeProcedure, myConnection);
                    foreach (string key in args.Keys)
                        da.SelectCommand.Parameters.Add(new SqlParameter(key, args[key]));                da.SelectCommand.CommandType = CommandType.StoredProcedure;
                    da.Fill(ds);                da.Dispose();
                    myConnection.Close();
                    myConnection.Dispose();
                }            return ds;
            }