三层架构
DBUtility下SQLHelper
 public static string selete2(string sql, List<SqlParameter> paras)
        {
            string result = "";
            SqlConnection conn = new SqlConnection();
            try
            {
                conn.ConnectionString = dataBase.connString;
                conn.Open();
                SqlCommand cmd = new SqlCommand();
                cmd.Connection = conn;
                cmd.CommandText = sql;
                for (int i = 0; i < paras.Count; i++)
                {
                    cmd.Parameters.Add(paras[i]);
                }
                SqlDataReader dr = cmd.ExecuteReader();
                if (dr.Read())
                {
                    result = dr[0].ToString();
                }
                return result;            }
            catch
            {
                result = "cuola";
                return result;
            }
            finally
            {
                conn.Close();            }
        }DAL层//获取某模块题目的编号 的list
       public List<string> getQuestionIdList(string moduleName,string matchName)//比赛环节名与比赛名称
       {
           string sql = "select questionId from matchQuestions where module='"+moduleName+ "' and match='"+matchName+"'";
           List<SqlParameter> sps = new List<SqlParameter>();
           List<string> quetionId = new List<string>();
          
           quetionId.Add(DBUtility.SQLHelper.selete2(sql, sps));//怎么只能加一个questionId啊??????这儿咋改???
           return quetionId;
       }Bll层
 //获取某比赛某模块的题目列表
       public List<string> selectMatchQueDistinct(string selectName, string moduleName, string matchName)
       {
           return dQuestions.getMatchQuescopeOf( selectName,  moduleName,  matchName);
         
       }求救,三层架构不熟悉,最后怎么只能从数据库里返回一个值。。咋改啊??

解决方案 »

  1.   

    list.Items.Add();增加项的集合
    试试
      

  2.   

    定义个数据结构,实现ISerializal接口,要多少返回多少。
      

  3.   

    selete2只返回一个result 
    while(dr.Read())
    {
      list.Add( dr[0].ToString());
    }
      

  4.   

    public static string selete2(string sql, List<SqlParameter> paras)
            {
                string result = "";
                SqlConnection conn = new SqlConnection();
                try
                {
                    conn.ConnectionString = dataBase.connString;
                    conn.Open();
                    SqlCommand cmd = new SqlCommand();
                    cmd.Connection = conn;
                    cmd.CommandText = sql;
                    for (int i = 0; i < paras.Count; i++)
                    {
                        cmd.Parameters.Add(paras[i]);
                    }
                    SqlDataReader dr = cmd.ExecuteReader();
                    while (dr.Read()) //if 只读出一个 改成while循环读取
                    {
                        result = dr[0].ToString();
                    }
                    return result;            }
                catch
                {
                    result = "cuola";
                    return result;
                }
                finally
                {
                    conn.Close();            }
            }