5
我有下面的代碼似乎不工作。在Page_Load函數中,填充DataSet並在網格視圖中顯示結果。RowFilter在DataTable中顯示在gridview中
newsCommand = new SqlCommand("SQL code here", dbConnection);
newsDataSet = new DataSet();
newsDataAdapter = new SqlDataAdapter(newsCommand);
newsDataAdapter.SelectCommand = newsCommand;
newsDataAdapter.Fill(newsDataSet, "Bulletins");
if (!Page.IsPostBack)
{
GridViewMain.DataSource = newsDataSet;
GridViewMain.DataBind();
}
我有一些鏈接,其調用此函數來過濾數據(yearID被作爲參數傳遞):
DataTable newsTable = new DataTable();
newsTable = newsDataSet.Tables[0];
DataView dvData = new DataView(newsTable);
dvData.RowFilter = "Year > '" + yearID + "'";
GridViewMain.DataSource = dvData;
GridViewMain.DataBind();
然而gridview的顯示它orignally加載的數據,並且不經過濾的數據。我能想到的唯一的事情就是我沒有在Page_Load函數中使用DataTable。我還有什麼遺漏?
感謝,
阿德里安
'DataTable newsTable = newsDataSet.Tables [0]',** please **。 – SLaks 2010-08-10 14:23:40
什麼是'yearID'? – SLaks 2010-08-10 14:24:22
yearID是一個以年份值開始以過濾數據的參數,但我將其修改爲完整日期。 我剛剛將函數中的代碼更改爲: newsDataSet.Tables [0] .DefaultView.RowFilter =「NewsDate2> '01/01/2010'」; GridViewMain.DataSource = newsDataSet.Tables [0] .DefaultView; GridViewMain.DataBind(); 但它仍然做同樣的事情(不過濾數據)。 – 2010-08-10 14:38:57