【发布时间】:2014-04-28 17:49:19
【问题描述】:
我想根据下拉列表值在 GridView 中显示记录
<asp:GridView ID="usersgrid" runat="server" AutoGenerateColumns="false">
<Columns >
<asp:BoundField DataField="Name" HeaderText="Name"/>
<asp:BoundField DataField="Age" HeaderText="Age"/>
<asp:BoundField DataField="Occupation" HeaderText="Occupation"/>
</Columns>
</asp:GridView>
这是下拉列表,用户必须从中选择年龄范围,以便根据选择显示结果
<asp:DropDownList ID="ddl1" DataTextField="Age" DataValueField="Profile_ID" runat="server" ></asp:DropDownList>
<asp:DropDownList ID="ddl2" DataTextField="Age" DataValueField="Profile_ID" runat="server" CssClass="validate[required]" data-errormessage-value-missing="Please select course"></asp:DropDownList>
我正在获取年龄表单数据库。现在选择用户点击搜索按钮后,GridView 必须填充结果。
using (SqlConnection con = new SqlConnection(strCon))
{
using (SqlCommand cmd = new SqlCommand())
{
cmd.CommandText = "select Profile_ID, FirstName + ' ' + LastName as Name, Age, Occupation from UserProfile where Age BETWEEN " + ddl1.Text + "AND " + ddl2.Text;
cmd.Connection = con;
con.Open();
usersgrid.DataSource = cmd.ExecuteReader();
usersgrid.DataBind();
con.Close();
}
}
但是 GridView 没有显示任何记录。哪里错了?
【问题讨论】:
-
usersgrid.DataBind(); 时是否有任何错误?使用调试器
-
不,没有任何错误