日期:2014-05-18  浏览次数:20457 次

另一个 SqlParameterCollection 中已包含 SqlParameter。
C# code
/// <summary>
        /// 执行存储过程
        /// </summary>
        /// <param name="procName">存储过程名称</param>
        /// <param name="prams">存储过程所需参数</param>
        /// <returns>返回存储过程返回值</returns>
        public static void RunProc(string procName, SqlParameter[] prams, out DataTable dt)
        {

            Open();
            cmd = new SqlCommand(procName, cn);
            if (prams != null)
                cmd.Parameters.AddRange(prams);//第一次查询没问题,第二次查询就会报
//另一个 SqlParameterCollection 中已包含 SqlParameter。错误,求解释
            cmd.CommandType = CommandType.StoredProcedure;

            sda = new SqlDataAdapter(cmd);
            ds = new DataSet();
            sda.Fill(ds);
            cmd.Parameters.Clear();
            Close();
            dt = ds.Tables.Count > 0 ? ds.Tables[0] : null;
        }


------解决方案--------------------

------解决方案--------------------
http://www.cnblogs.com/yank/archive/2008/04/01/1132825.html