将LinqDataSource从代码隐藏绑定到Gridview

时间:2010-09-08 17:51:21

标签: asp.net linqdatasource

我在.aspx页面上有一个grdidview控件,我试图从后面的代码动态连接并绑定gridview但不知何故它给我一个错误...这个代码有什么问题?有什么帮助吗?

  LinqDataSource LDS_POReport = new LinqDataSource();
            LDS_POReport.ContextTypeName = "DataContextDataContext";
            LDS_POReport.Selecting += new EventHandler<LinqDataSourceSelectEventArgs>(LinqDataSourcePO_Selecting);
            this.gvReport.DataSource = "LDS_POReport";
            //this.gvReport.DataBind();

更新

将代码更新为

 this.gvReport.DataSource = LDS_POReport;

它工作正常但是当我尝试排序时我得到了这个错误:

GridView'gvReport'触发事件排序 没有处理。

我添加了这个但没有效果。

 LDS_POReport.AutoPage = true;
 LDS_POReport.AutoSort = true;

2 个答案:

答案 0 :(得分:3)

你的问题在这里:

this.gvReport.DataSource = "LDS_POReport";

上面的代码行尝试将字符串分配给需要某种数据源的属性。我假设你真的打算分配LinqDataSource对象本身:

this.gvReport.DataSource = LDS_POReport;

答案 1 :(得分:0)

首先,DataSource应该获得对包含数据的对象的引用,而不是包含数据的对象的名称。 GridViews可以反射性地工作,但不是反射性的。