在c#中添加不同条件的搜索

本文关键字:条件 搜索 添加 | 更新日期: 2023-09-27 18:13:18

我想知道如何查看用户在组合框中选择了doctor name还是doctor special,如果用户从组合框中选择了doctor name,那么应该运行第一个if条件,但是如果用户输入了doctor special,则应该运行第二个if条件。但是当我输入医生名称时,它不起作用。

   if (comboxBox1.Text = "Doctor name") ; 
                {
                    try
                    {
                        OleDbConnection con = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=E:''dev''assignt_soft''healthline_''healthline_''healthline_db.accdb");
                        OleDbCommand com = new OleDbCommand("select * from doctorss where uuname='" + textBox1.Text + "'", con);
                        DataTable dt = new DataTable();
                        con.Open();
                        dt.Load(com.ExecuteReader());
                        dataGridView1.DataSource = dt;
                        con.Close();
                        MessageBox.Show("Displaying doctors with the search criteria doctor name");
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show(ex.Message);
                    }

                    if (comboxBox1.Text = "Doctor special") ; 
                {
                    try
                    {
                        OleDbConnection con = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=E:''dev''assignt_soft''healthline_''healthline_''healthline_db.accdb");
                        OleDbCommand com = new OleDbCommand("select * from doctorss where doctor special='" + textBox1.Text + "'", con);
                        DataTable dt = new DataTable();
                        con.Open();
                        dt.Load(com.ExecuteReader());
                        dataGridView1.DataSource = dt;
                        con.Close();
                        MessageBox.Show("Displaying doctors with the search criteria doctor name");
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show(ex.Message);
                    }
                }

在c#中添加不同条件的搜索

试着这样格式化你的代码。

try
{
    if (comboxBox1.Text != "Doctor special")
    {
        //doctor name code...       
    }
    else
    {
        //special doctor code...
    }
}
catch (Exception ex)
{
    MessageBox.Show(ex.Message);
}

对于if语句,总是在c#中使用==相等运算符,如if (count == 0)。单个等号用于像int count = 1这样的赋值。如果在if(…)之后没有;,它将使编译器认为存在空白语句,并将其与if条件相关联。接下来的代码块将成为一个正常的代码块,并将始终执行!

首先让这个工作。然后,使您的查询参数化,以尽量减少sql注入威胁,正如@Steve在评论中提到的。