我是用一个标签来显示数据库的总数目,这是代码<asp:Label ID="Label11" runat="server" Text="Label" Width="73px"></asp:Label>,后台代码:
protected void Page_Load(object sender, EventArgs e)
{
DataTable dt = new DataTable();
OleDbConnection conn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" + System.Web.HttpContext.Current.Server.MapPath("~/App_Data/yunwei.mdb") + "; Persist Security Info=False;");
conn.Open();
OleDbDataAdapter Ad = new OleDbDataAdapter("SELECT * FROM [user] ORDER BY [序号]", conn);
Ad.Fill(dt);
conn.Close();
Label11.Text = " 共" + dt.Rows.Count.ToString() + "户";
// ((Label)(GridView1.PagerTemplate.InstantiateIn(FindControl("Label10")).Text = "大大大";
}
以上程序可以正常显示数据库的总数目,但是输入查询条件之后,查询结果的数目仍显示的是数据库总数目,而不是查询结果的总数目。怎么办??
求大神指点!!
------解决思路----------------------
你要在输入查询条件后,在"SELECT * FROM [user] ORDER BY [序号]"字符串里加入where条件才行啊,没看到你的条件sql语句。
------解决思路----------------------
Page_Load里面的所有的代码统统删掉,用了AccessDataSource就没必要这样查询这样查询了
你给AccessDataSource1添加一个Selected事件:
AccessDataSource1.Selected += AccessDataSource1_Selected;
事件代码:
protected void AccessDataSource1_Selected(object sender, SqlDataSourceStatusEventArgs e)
{
Label11.Text = " 共" + e.AffectedRows.ToString() + "户";
}
完成了,不懂的自己再摸索一下。