我有2个MS SQL表名词和动词。在ASP.net页面上,我有一个带有未绑定项目动词(选定值1)和名词(选定值2)的下拉列表。我有一个文本框和一个搜索按钮以及一个未绑定的gridview1。
我希望能够在textbox1中输入文字,并根据下拉列表的选择, 我希望它能够搜索动词表或名词表,并在Gridview1中返回这些结果。谢谢
这是我到目前为止,它没有抛出错误,它只是超出第一个if语句。我的连接字符串代码被省略,但它被称为vid。
protected void Button1_Click(object sender, EventArgs e)
{
if (DropDownList1.SelectedValue == "1")
{
string str = "select * from verb where(english like '%' + @search + '%')";
SqlCommand xp = new SqlCommand(str, vid);
xp.Parameters.Add("@search", SqlDbType.NVarChar).Value = TextBox1.Text;
vid.Open();
xp.ExecuteNonQuery();
SqlDataAdapter da = new SqlDataAdapter();
da.SelectCommand = xp;
DataSet ds = new DataSet();
da.Fill(ds, "verb");
GridView1.DataSource = ds;
GridView1.DataBind();
vid.Close();
if (DropDownList1.SelectedValue == "2")
{
string stx = "select * from noun where(english like '%' + @search + '%')";
SqlCommand xr = new SqlCommand(stx, vid);
vid.Open();
xr.ExecuteNonQuery();
SqlDataAdapter dr = new SqlDataAdapter();
dr.SelectCommand = xr;
DataSet dss = new DataSet();
dr.Fill(dss, "noun");
GridView1.DataSource = dss;
GridView1.DataBind();
vid.Close();
} } }
答案 0 :(得分:1)
您正在使用嵌套(如
)if (DropDownList1.SelectedValue == "1")
{
//Populated from verb table
if (DropDownList1.SelectedValue == "2")
{
//Populated from noun table
}
}
将其更改为DropDownList1.SelectedValue
可以是1
或2
if (DropDownList1.SelectedValue == "1")
{
//Populated from verb table
}else if (DropDownList1.SelectedValue == "2")
{
//Populated from noun table
}