我根据放入文本框中的数字数据并单击按钮,使用以下代码填充 GridView。但它给出了以下错误。将数据类型 varchar 转换为浮点数时出错。由于我的数据库列“matri_perct”的数据类型为“float”。
protected void Button1_Click(object sender, EventArgs e)
{
try
{
con = new SqlConnection(ConfigurationManager.ConnectionStrings["SQL Connection String"].ConnectionString);con.Open();
com = new SqlCommand("SELECT * FROM stdtable WHERE matri_perct > @Percent", con);
com.Parameters.AddWithValue("Percent", float.Parse(txtPercent.Text));
com.ExecuteNonQuery();
SqlDataAdapter dataadapter = new SqlDataAdapter();
DataSet ds = new DataSet();
dataadapter.Fill(ds, "Data");
GridView1.DataSource = ds;
GridView1.DataMember = "Data";
con.Close();
}
catch (System.Exception err)
{
Label1.Text = err.Message.ToString();
}
}
我的 GridView .aspx 代码声明为
<asp:GridView ID="GridView1" runat="server" AllowPaging="True" AutoGenerateColumns="False" DataKeyNames="univ_regno" DataSourceID="" EnableModelValidation="True">
<Columns>
<asp:BoundField DataField="school" HeaderText="School"
SortExpression="school" />
<asp:BoundField DataField="univ_regno" HeaderText="Univ R.No." ReadOnly="True"
SortExpression="univ_regno" />
<asp:BoundField DataField="colge_rollno" HeaderText="Coll. R.No."
SortExpression="colge_rollno" />
<asp:BoundField DataField="branch" HeaderText="Branch"
SortExpression="branch" />
<asp:BoundField DataField="sem" HeaderText="Sem" SortExpression="sem" />
<asp:BoundField DataField="name" HeaderText="Name" SortExpression="name" />
<asp:BoundField DataField="f_name" HeaderText="F.Name"
SortExpression="f_name" />
<asp:BoundField DataField="date_birth" HeaderText="DOB"
SortExpression="date_birth" />
<asp:BoundField DataField="mob" HeaderText="Mobile"
SortExpression="mob" />
<asp:BoundField DataField="email" HeaderText="E-mail" SortExpression="email" />
<asp:BoundField DataField="matri_perct" HeaderText="Matric %"
SortExpression="matri_perct" />
<asp:BoundField DataField="intermed_perct" HeaderText="Intermediate %"
SortExpression="intermed_perct" />
<asp:BoundField DataField="grad_perct" HeaderText="UG %"
SortExpression="grad_perct" />
<asp:BoundField DataField="post_grad_perct" HeaderText="PG %"
SortExpression="post_grad_perct" />
<asp:BoundField DataField="other_perct" HeaderText="Other %"
SortExpression="other_perct" />
<asp:BoundField DataField="no_backlogs" HeaderText="Backlogs"
SortExpression="no_backlogs" />
<asp:BoundField DataField="Password" HeaderText="Password"
SortExpression="Password" />
</Columns>
</asp:GridView>
<asp:SqlDataSource ID="studentprofile" runat="server"
ConnectionString="<%$ ConnectionStrings:SQL Connection String %>"
SelectCommand="SELECT DISTINCT [school], [univ_regno], [colge_rollno], [branch], [sem], [name], [f_name], [date_birth], [cores_add], [mob], [email], [matri_perct], [intermed_perct], [grad_perct], [post_grad_perct], [other_perct], [no_backlogs], [Password] FROM [stdtable] ORDER BY [branch], [univ_regno]">
</asp:SqlDataSource>