• ASP.NET dropdownlist绑定数据却显示System.Data.DataRowView


     

    问题: 在VS中用dropdownlist控件绑定数据,浏览时却在控件里显示System.Data.DataRowView,而不是要显示的数据,代码如下:

    public static DataSet GetDataSet(DataSet ds, string tablename)
           {
               string s = "select departmentName from department_info";
               string con = ConfigurationManager.ConnectionStrings["CodematicConnectionString"].ConnectionString.ToString();
               SqlConnection conn = new SqlConnection(con);
               SqlDataAdapter adapter = new SqlDataAdapter(s, con);
               adapter.Fill(ds, tablename);
               return ds;
           }

    protected void Page_Load(object sender, EventArgs e)
           {

             if(!IsPostBack)

               {
                   DataSet ds = new DataSet();
                   string tablename = "department_Info";
                   ds = GetDataSet(ds, tablename);
                   this.ddl_post.DataSource = ds;
                          this.ddl_post.DataBind();
                   DataTable dt = ds.Tables[0];
                   DataRow dr = dt.NewRow();
                   dr[0] = "==请选择==";
                   //添加到第1行
                   dt.Rows.InsertAt(dr, 0);
                   this.ddl_post.DataSource = dt;
                   //这种方法也可以
                   //this.ddl_department.Items.Insert(0,"==请选择==");
                   //this.ddl_department.Items.FindByText("==请选择==").Selected = true;

               } 

         }

    解决:在DataBind();前加上

             ddl_post.DataTextField = "departmentName";
                  ddl_post.DataValueField = "departmentName";

    就可以了.

  • 相关阅读:
    总结前端笔面试遇到的问题——HTML部分
    js中的克隆方法
    js操作cookie
    JS中4种常见的内存泄漏
    html、css、js三者的加载顺序
    js中object定义的几种方法
    关于settimeout的面试题
    css各种居中解决方法
    JS实现继承的几种方式
    将博客搬至CSDN
  • 原文地址:https://www.cnblogs.com/tangge/p/2502233.html
Copyright © 2020-2023  润新知