在正规的开发中,不允许使用SqlDataSource、ObjectDataSource、AccessDataSource等数据源控件快速的开发Web应用,因为这样会增加服务器的压力,不满足开发的基本要求。
所以需要手动绑定数据源,下面做了演示。
如何给GridView控件手动绑定数据源。
为了方便演示,就不用多层架构了。
首先在DBHelper类中查询数据库中需要的信息,返回Dataset,如下:
/// <summary> /// 获取所有的学员分数信息 /// </summary> /// <returns></returns> public DataSet SelectAllScore() { ds = new DataSet(); try { this.opensql(); string sql = "select * from ScoreTable"; da = new SqlDataAdapter(sql, conn); da.Fill(ds); } catch (Exception ex) { Console.WriteLine(ex.ToString()); } finally { this.closesql(); } return ds; }
然后在页面的后台写下面的代码:
protected void Page_Load(object sender, EventArgs e) { //首次加载页面时 if(!Page.IsPostBack) { this.BindAllScore(); } } /// <summary> /// 获取所有的分数信息 /// </summary> public void BindAllScore() { DataSet ds = db.SelectAllScore(); this.ScoreView.DataSource = ds; this.ScoreView.DataBind(); }
当然了,首页控件要取消自动生成列,手动编辑。
如下:
然后手动绑定一下数据库中的列名,如下:
至此,手动绑定数据信息完成。