gridView.DataSource作为DataTable在asp.net中设置为null

DNR*_*DNR 6 c# asp.net gridview datasource

我将gridview.datasource设置为数据表变量,如下所示:

DataTable dt = gvPaymentHistory.DataSource as DataTable;  
Run Code Online (Sandbox Code Playgroud)

gvPaymentHistory.DataSource有一条记录,但是在执行该行之后dt为null.如何将数据源记录传递给dt?

编辑

DataSource是类对象的List集合.它不是DataSet

Sra*_*mar 2

简单的方法是将数据绑定到网格时将网格的数据源存储在视图源中,然后每次需要时从视图源中检索它。

Gridview.Datasource = yourdatasource;
ViewState["mydatasource"] = yourdatasource;
Run Code Online (Sandbox Code Playgroud)

检索时

DataTable dt = ViewState["mydatasource"] as DataTable;
Run Code Online (Sandbox Code Playgroud)

希望这能解决您的问题。