步驟二:在ASPx前台頁面中添加一個DataGrid1,在後台代碼的Page_Load中編寫如下代碼:
if(!this.IsPostBack)
{
Session["Table"]=MakeTable();
DataGrid1.DataSource=(DataTable)Session["Table"];
DataGrid1.DataBind();
}
此時浏覽頁面,可以看到DataGrid中顯示的表中數據。
ID 商品名稱 商品價格
1 足球 57.5
2 籃球 64.5
3 網球 6.5
4 網球拍 388.5
步驟三:在ASPx前台頁面添加一個用來查詢Label1,TextBox1和Button1。
步驟四:在查詢按鈕Button1單擊事件中添加如下代碼:
DataTable dt=(DataTable)Session["Table"];
//為數據表建立一個數據視圖
DataView dv = new DataVIEw(dt);
//用RowFilter屬性進行模糊查詢
dv.RowFilter="商品名稱 LIKE'%"+TextBox1.Text.Trim()+"%'";
DataGrid1.DataSource = dv;
DataGrid1.DataBind();
運行頁面後在TextBox1中輸入“網”,按查詢按鈕後 ,DataGrid顯示的查詢結果如下:
ID 商品名稱 商品價格
3 網球 6.5
4 網球拍 388.5
步驟五:在ASPx前台頁面上添加一個Label2控件,兩個TextBox控件-TextBox1和TextBox2,以及一個“查詢”按鈕,Button2,如下圖所示,用來查詢用戶輸入的價格范圍中在商品。
步驟六:在後台代碼中為Button2按鈕單擊事件添加如下如下代碼:
DataTable dt = (DataTable)Session["Table"];
DataView dv = new DataVIEw(dt);
dv.RowFilter="商品價格>="+TextBox2.Text.Trim()+" AND 商品價格<="+TextBox3.Text.Trim();
DataGrid1.DataSource=dv;
DataGrid1.DataBind();
用戶在兩個文本框中輸入價格范圍,10,70後,DataGrid1中顯示的查詢結果如下:
ID 商品名稱 商品價格
1 足球 57.5
2 籃球 64.5
可見,用DataVIEw的RowFilter屬性完全能達到SQL語句SELECT語句所實現的功能
RowFilter中的查詢語句與SQL語句中SELECT語句的語法和作用都極為相似,以下是摘自MSDN中關於RowFilter查詢語句的語法說明:
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////