C# 3下拉列表搜索功能
我对c#是新来的,比如说 我目前正在c#中使用3个下拉列表和一个提交按钮开发搜索功能。当用户在DropDownList上选择一个项目并单击submit时,它将打印相应选择的表格 有3个下拉列表:C# 3下拉列表搜索功能,c#,asp.net,.net,ado.net,C#,Asp.net,.net,Ado.net,我对c#是新来的,比如说 我目前正在c#中使用3个下拉列表和一个提交按钮开发搜索功能。当用户在DropDownList上选择一个项目并单击submit时,它将打印相应选择的表格 有3个下拉列表: 一个省 城市 专业化 这将搜索适合选择的可用医生。例如,我在第一个下拉列表中选择了province1,在第二个下拉列表中选择了city1,在第三个下拉列表中选择了心理学家,当submit按钮启动时,它将打印province1,city1中具有心理学家专业知识的可用医生 我已经有了一个代码,但当我点击提交
public partial class Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
System.Threading.Thread.Sleep(1000);
if (!IsPostBack)
{
string constring = ConfigurationManager.ConnectionStrings["AccreString"].ConnectionString;
SqlConnection conn = new SqlConnection(constring);
DataTable dt = new DataTable("emed_province");
using (conn)
{
conn.Open();
SqlCommand comm = new SqlCommand("SELECT * FROM emed_province ORDER BY PROVINCE_NAME ASC", conn);
SqlDataAdapter adptr = new SqlDataAdapter(comm);
adptr.Fill(dt);
}
ddlProvince.DataSource = dt;
ddlProvince.DataTextField = "PROVINCE_NAME";
ddlProvince.DataValueField = "PROVINCE_CODE";
ddlProvince.DataBind();
ddlProvince.Items.Insert(0, new ListItem("---------------SELECT---------------", "0"));
ddlCity.Items.Insert(0, new ListItem("---------------SELECT---------------", "0"));
ddlSpec.Items.Insert(0, new ListItem("---------------SELECT---------------", "0"));
}
}
protected void ddlProvince_SelectedIndexChanged(object sender, EventArgs e)
{
System.Threading.Thread.Sleep(1000);
string constring = ConfigurationManager.ConnectionStrings["AccreString"].ConnectionString;
SqlConnection conn = new SqlConnection(constring);
DataTable dt = new DataTable("emed_province");
using (conn)
{
conn.Open();
SqlCommand comm = new SqlCommand("SELECT * FROM emed_city WHERE PROVINCE_CODE =@pcode", conn);
comm.Parameters.AddWithValue("@pcode", ddlProvince.SelectedValue);
SqlDataAdapter adptr = new SqlDataAdapter(comm);
adptr.Fill(dt);
SqlParameter param = new SqlParameter();
param.ParameterName = "@pcode";
param.Value = ddlProvince;
comm.Parameters.Add(param);
}
ddlCity.DataSource = dt;
ddlCity.DataTextField = "CITY_NAME";
ddlCity.DataValueField = "CITY_CODE";
ddlCity.DataBind();
ddlCity.Items.Insert(0, new ListItem("---------------SELECT---------------", "0"));
}
protected void ddlCity_SelectedIndexChanged(object sender, EventArgs e)
{
System.Threading.Thread.Sleep(1000);
string constring = ConfigurationManager.ConnectionStrings["AccreString"].ConnectionString;
SqlConnection conn = new SqlConnection(constring);
DataTable dt = new DataTable("emed_city");
using (conn)
{
conn.Open();
SqlCommand comm = new SqlCommand("SELECT * FROM emed_specialization", conn);
comm.Parameters.AddWithValue("@ccode", ddlCity.SelectedValue);
SqlDataAdapter adptr = new SqlDataAdapter(comm);
adptr.Fill(dt);
SqlParameter param = new SqlParameter();
param.ParameterName = "@ccode";
param.Value = ddlCity;
comm.Parameters.Add(param);
}
ddlSpec.DataSource = dt;
ddlSpec.DataTextField = "SPEC_NAME";
ddlSpec.DataValueField = "SPEC_CODE";
ddlSpec.DataBind();
ddlSpec.Items.Insert(0, new ListItem("---------------SELECT---------------", "0"));
}
protected void btnSub_Click(object sender, EventArgs e)
{
string constring = ConfigurationManager.ConnectionStrings["AccreString"].ConnectionString;
SqlConnection conn = new SqlConnection(constring);
DataTable dt = new DataTable("emed_doctors");
using (conn)
{
conn.Open();
SqlCommand comm = new SqlCommand("SELECT DOCTOR_NAME FROM emed_doctors where Province = '" + ddlProvince.SelectedItem.ToString() + "'", conn);
SqlDataAdapter adptr = new SqlDataAdapter(comm);
adptr.Fill(dt);
}
}
}
在“提交”按钮单击功能中的这一行代码中进行更改 正确的代码:
SqlCommand comm = new SqlCommand("SELECT DOCTOR_NAME FROM emed_doctors where province = '" + ddlProvince.SelectedItem.ToString() + "'", conn);
SqlCommand comm = new SqlCommand("SELECT DOCTOR_NAME FROM emed_doctors where (" + ddlProvince.SelectedItem.ToString() + " ", conn);
因为当你看到你的代码查询是不正确的时,你要注意你的代码是不正确的
错误代码:
SqlCommand comm = new SqlCommand("SELECT DOCTOR_NAME FROM emed_doctors where province = '" + ddlProvince.SelectedItem.ToString() + "'", conn);
SqlCommand comm = new SqlCommand("SELECT DOCTOR_NAME FROM emed_doctors where (" + ddlProvince.SelectedItem.ToString() + " ", conn);
编辑:
SqlCommand comm = new SqlCommand("SELECT DOCTOR_NAME FROM emed_doctors where province = '" + ddlProvince.SelectedItem.ToString() + "'", conn);
SqlCommand comm = new SqlCommand("SELECT DOCTOR_NAME FROM emed_doctors where (" + ddlProvince.SelectedItem.ToString() + " ", conn);
如果您想显示在DataTable中得到的记录,您要么需要遍历记录,要么需要使用GridView…我认为您错过了这一点
在上面的一个where子句中,您遗漏了需要对其进行筛选的文件名。。。我已经通过修改该条件编写了更新代码
有关
GridView
的信息,请参见在提交按钮单击功能中的这一行代码中进行更改
正确的代码:
SqlCommand comm = new SqlCommand("SELECT DOCTOR_NAME FROM emed_doctors where province = '" + ddlProvince.SelectedItem.ToString() + "'", conn);
SqlCommand comm = new SqlCommand("SELECT DOCTOR_NAME FROM emed_doctors where (" + ddlProvince.SelectedItem.ToString() + " ", conn);
因为当你看到你的代码查询是不正确的时,你要注意你的代码是不正确的
错误代码:
SqlCommand comm = new SqlCommand("SELECT DOCTOR_NAME FROM emed_doctors where province = '" + ddlProvince.SelectedItem.ToString() + "'", conn);
SqlCommand comm = new SqlCommand("SELECT DOCTOR_NAME FROM emed_doctors where (" + ddlProvince.SelectedItem.ToString() + " ", conn);
编辑:
SqlCommand comm = new SqlCommand("SELECT DOCTOR_NAME FROM emed_doctors where province = '" + ddlProvince.SelectedItem.ToString() + "'", conn);
SqlCommand comm = new SqlCommand("SELECT DOCTOR_NAME FROM emed_doctors where (" + ddlProvince.SelectedItem.ToString() + " ", conn);
如果您想显示在DataTable中得到的记录,您要么需要遍历记录,要么需要使用GridView…我认为您错过了这一点
在上面的一个where子句中,您遗漏了需要对其进行筛选的文件名。。。我已经通过修改该条件编写了更新代码
查看
GridView
您说过在单击提交后,什么都没有发生。但是在btnSub_单击中,我没有看到任何显示结果或更改页面上任何内容的内容。您应该将dt绑定到一些控件,如gridview等。您说过在单击submit之后,什么都没有发生。但是在btnSub_单击中,我没有看到任何显示结果或更改页面上任何内容的内容。您应该将dt绑定到一些控件,如gridview等。@Lyard-再次检查并通过调试代码检查您的查询,因为这是我认为您的代码中唯一的问题…请检查编辑列表。谢谢那么,如何使用gridview呢?你能给我一个链接什么的吗?看不见。找不到内容,先生。@Lyard-检查我粘贴的最后一个链接中的答案you@Lyard-再次检查并通过调试代码检查您的查询,因为这是我认为您的代码中唯一的问题…请检查编辑选项。谢谢那么,如何使用gridview呢?你能给我一个链接什么的吗?看不见。找不到内容,先生。@Lyard-检查我为您粘贴的最后一个链接中的答案