使用DataTable进行检索和排序示例

 DataBind.aspx如下:

     < form id = " form1 "  runat = " server " >
    
< div >
        
< asp:Label ID = " DisplayLabel "  runat = " server "  Text = " Label " ></ asp:Label ></ div >
    
</ form >

DataBind.aspx.cs如下:

using  System;
using  System.Data;
using  System.Configuration;
using  System.Collections;
using  System.Web;
using  System.Web.Security;
using  System.Web.UI;
using  System.Web.UI.WebControls;
using  System.Web.UI.WebControls.WebParts;
using  System.Web.UI.HtmlControls;
using  System.Data.SqlClient;

public   partial   class  DataTableExample : System.Web.UI.Page
{
    
protected void Page_Load(object sender, EventArgs e)
    
{
        
string connStr = ConfigurationManager.ConnectionStrings["northwind"].ConnectionString;
        SqlConnection conn 
= new SqlConnection(connStr);
        conn.Open();
        SqlDataAdapter da 
= new SqlDataAdapter("SELECT CustomerID, CompanyName, Country FROM Customers", conn);
        DataTable dt 
= new DataTable();
        da.Fill(dt);

        
// 定义筛选条件字符串和排序字符串
        string strExpr = "country = 'usa'";
        
string strSort = "companyname desc";

        
// 获得经过筛选和排序后的数据
        DataRow[] resultRows = dt.Select(strExpr, strSort);
        
// 显示经过筛选和排序后的数据
        Display_Label(resultRows, DisplayLabel);

    }


    
// 显示DataRow数组中的内容
    public void Display_Label(DataRow[] rows, Label label)
    

        
// 检查返回数据是否为空
        if (rows.Length < 0)
        
{
            label.Text 
= "没有数据";
            
return;
        }

        label.Text 
= "";

        
// 遍历DataRow数组的行和列,显示数据
        label.Text += "<Table border='1'>";
        label.Text 
+= "<TR><TH>CustomerID</TH><TH>CompanyName</TH><TH>Country</TH></TR>";

        
foreach (DataRow row in rows)
        
{
            label.Text 
+= "<tr>";
            
for (int i = 0; i < row.Table.Columns.Count; i++)
            
{
                label.Text 
+= "<td>";
                label.Text 
+= row[i];
                label.Text 
+= "</td>";
            }

            label.Text 
+= "</tr>";
        }

        label.Text 
+= "</table>";
    }

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值