چه كار كنم اين دستورات بهتر و كوتاهتر شود؟
سلام دوستان
ببخشيد ميخواستم يك راهنماييم كنيد
اين كد جستجو را بر اساس نام جدولي كه كاربر با COMBOBOX انتخاب ميكند انجام مي دهد
من هر دفعه دستورات تكراري براي جستجو وارد كردم اما نميدونم چه كار كنم كه كوتاهتر شود و جستجوي بهتري داشته باشم؟!! در اينجا دستورات if اول براي بقيه جداول دارد تكرار ميشود !!!
کد:
private void button1_Click(object sender, EventArgs e)
{
if (comboBox1.Text == "اطلاعات 1")
{
SqlConnection cn = new SqlConnection();
cn.ConnectionString = "Data Source=.;Initial Catalog=Xadamat;Integrated Security=True";
SqlDataAdapter da = new SqlDataAdapter();
SqlCommand cmd = new SqlCommand();
cmd.Connection = cn;
cmd.CommandText = "SELECT Person_Inf.ID,Person_Inf.Dossier_Num,Person_Inf.Lname,Person_Inf.Fname,Person_Inf.Identity_Num,Person_Inf.Father,Person_Inf.Status,Person_Inf.Recruitment_Date,Person_Inf.Pensioner_Date,Person_Inf.Description,Loan_Inf.Loan_Type,Loan_Inf.Loan_Cost,Loan_Inf.Division_Cost,Loan_Inf.Division_Num,Loan_Inf.Request_Date,Loan_Inf.Done_Date FROM Person_Inf INNER JOIN Loan_Inf ON Person_Inf.ID=Loan_Inf.ID_Person AND Person_Inf.ID=@A OR Person_Inf.Dossier_Num=@A";
cmd.Parameters.AddWithValue("@A", Int64.Parse(textBox1.Text));
da.SelectCommand = new SqlCommand();
da.SelectCommand = cmd;
DataSet ds = new DataSet();
cn.Open();
da.Fill(ds, "T_Inf");
cn.Close();
dataGridView1.DataSource = ds;
dataGridView1.DataMember = "T_Inf";
}
if (comboBox1.Text == "اطلاعات 2")
{
if (radioButton1.Checked == true)
{
SqlConnection cn = new SqlConnection();
cn.ConnectionString = "Data Source=.;Initial Catalog=Xadamat;Integrated Security=True";
SqlDataAdapter da = new SqlDataAdapter();
SqlCommand cmd = new SqlCommand();
cmd.Connection = cn;
cmd.CommandText = "SELECT Repast_Person.ID_Repast,Person_Inf.ID,Person_Inf.Dossier_Num,Person_Inf.Lname,Person_Inf.Fname,Person_Inf.Identity_Num,Person_Inf.Father,Person_Inf.Status,Person_Inf.Recruitment_Date,Person_Inf.Pensioner_Date,Person_Inf.Description FROM Person_Inf INNER JOIN Repast_Person ON Person_Inf.ID=Repast_Person.ID_Person AND Repast_Person.ID_Repast=@A";
cmd.Parameters.AddWithValue("@A", Int16.Parse(textBox1.Text));
da.SelectCommand = new SqlCommand();
da.SelectCommand = cmd;
DataSet ds = new DataSet();
cn.Open();
da.Fill(ds, "T_Inf");
cn.Close();
dataGridView1.DataSource = ds;
dataGridView1.DataMember = "T_Inf";
}
else if (radioButton2.Checked == true)
{
SqlConnection cn = new SqlConnection();
cn.ConnectionString = "Data Source=.;Initial Catalog=Xadamat;Integrated Security=True";
SqlDataAdapter da = new SqlDataAdapter();
SqlCommand cmd = new SqlCommand();
cmd.Connection = cn;
cmd.CommandText = "SELECT ID,Rdate,Stime,Place FROM Repast_Inf WHERE ID=@A";
cmd.Parameters.AddWithValue("@A", Int16.Parse(textBox1.Text));
da.SelectCommand = new SqlCommand();
da.SelectCommand = cmd;
DataSet ds = new DataSet();
cn.Open();
da.Fill(ds, "T_Inf");
cn.Close();
dataGridView1.DataSource = ds;
dataGridView1.DataMember = "T_Inf";
}
}
if (comboBox1.Text == "اطلاعات 3")
{
if (radioButton3.Checked == true)
{
SqlConnection cn = new SqlConnection();
cn.ConnectionString = "Data Source=.;Initial Catalog=Xadamat;Integrated Security=True";
SqlDataAdapter da = new SqlDataAdapter();
SqlCommand cmd = new SqlCommand();
cmd.Connection = cn;
cmd.CommandText = "SELECT Travel_Person.ID_Travel,Person_Inf.ID,Person_Inf.Dossier_Num,Person_Inf.Lname,Person_Inf.Fname,Person_Inf.Identity_Num,Person_Inf.Father,Person_Inf.Status,Person_Inf.Recruitment_Date,Person_Inf.Pensioner_Date,Person_Inf.Description FROM Travel_Person INNER JOIN Person_Inf ON Travel_Person.ID_Person=Person_Inf.ID AND Travel_Person.ID_Travel=@A";
cmd.Parameters.AddWithValue("@A", Int16.Parse(textBox1.Text));
da.SelectCommand = new SqlCommand();
da.SelectCommand = cmd;
DataSet ds = new DataSet();
cn.Open();
da.Fill(ds, "T_Inf");
cn.Close();
dataGridView1.DataSource = ds;
dataGridView1.DataMember = "T_Inf";
}
else if (radioButton4.Checked == true)
{
SqlConnection cn = new SqlConnection();
cn.ConnectionString = "Data Source=.;Initial Catalog=Xadamat;Integrated Security=True";
SqlDataAdapter da = new SqlDataAdapter();
SqlCommand cmd = new SqlCommand();
cmd.Connection = cn;
cmd.CommandText = "SELECT ID,Gdate,Bdate,Place,Duration,Cost FROM Travel_Inf WHERE ID=@A";
cmd.Parameters.AddWithValue("@A", Int16.Parse(textBox1.Text));
da.SelectCommand = new SqlCommand();
da.SelectCommand = cmd;
DataSet ds = new DataSet();
cn.Open();
da.Fill(ds, "T_Inf");
cn.Close();
dataGridView1.DataSource = ds;
dataGridView1.DataMember = "T_Inf";
}
}
if (comboBox1.Text == "اطلاعات 4")
{
SqlConnection cn = new SqlConnection();
cn.ConnectionString = "Data Source=.;Initial Catalog=Xadamat;Integrated Security=True";
SqlDataAdapter da = new SqlDataAdapter();
SqlCommand cmd = new SqlCommand();
cmd.Connection = cn;
cmd.CommandText = "SELECT Person_Inf.ID,Person_Inf.Dossier_Num,Person_Inf.Lname,Person_Inf.Fname,Person_Inf.Identity_Num,Person_Inf.Father,Person_Inf.Status,Person_Inf.Recruitment_Date,Person_Inf.Pensioner_Date,Person_Inf.Description,Car_Inf.Car_Kind,Car_Inf.Request_Date,Car_Inf.Receive_Date FROM Person_Inf INNER JOIN Car_Inf ON (Person_Inf.ID=Car_Inf.ID_Person AND Person_Inf.ID=@A) OR (Person_Inf.Dossier_Num=@A))";
cmd.Parameters.AddWithValue("@A", Int64.Parse(textBox1.Text));
cmd.Parameters.AddWithValue("@B", "13" + maskedTextBox1.Text + "/" + maskedTextBox2.Text + "/" + maskedTextBox3.Text);
cmd.Parameters.AddWithValue("@C", "13" + maskedTextBox4.Text + "/" + maskedTextBox5.Text + "/" + maskedTextBox6.Text);
da.SelectCommand = new SqlCommand();
da.SelectCommand = cmd;
DataSet ds = new DataSet();
cn.Open();
da.Fill(ds, "T_Inf");
cn.Close();
dataGridView1.DataSource = ds;
dataGridView1.DataMember = "T_Inf";
}
if (comboBox1.Text == "اطلاعات 5")
{
SqlConnection cn = new SqlConnection();
cn.ConnectionString = "Data Source=.;Initial Catalog=Xadamat;Integrated Security=True";
SqlDataAdapter da = new SqlDataAdapter();
SqlCommand cmd = new SqlCommand();
cmd.Connection = cn;
cmd.CommandText = "SELECT Person_Inf.ID,Person_Inf.Dossier_Num,Person_Inf.Lname,Person_Inf.Fname,Person_Inf.Identity_Num,Person_Inf.Father,Person_Inf.Status,Person_Inf.Recruitment_Date,Person_Inf.Pensioner_Date,Person_Inf.Description,Moserin_Inf.Kind,Moserin_Inf.Relation,Moserin_Inf.MKind,Moserin_Inf.Member,Moserin_Inf.Cost,Moserin_Inf.Kdate,Moserin_Inf.Jdate,Moserin_Inf.Member_Offer,Moserin_Inf.Done_Offer,Moserin_Inf.Description FROM Person_Inf INNER JOIN Moserin_Inf ON Person_Inf.ID=Moserin_Inf.ID_Person AND Person_Inf.ID=@A OR Person_Inf.Dossier_Num=@A";
cmd.Parameters.AddWithValue("@A", Int64.Parse(textBox1.Text));
da.SelectCommand = new SqlCommand();
da.SelectCommand = cmd;
DataSet ds = new DataSet();
cn.Open();
da.Fill(ds, "T_Inf");
cn.Close();
dataGridView1.DataSource = ds;
dataGridView1.DataMember = "T_Inf";
}
if (comboBox1.Text == "اطلاعات 6")
{
SqlConnection cn = new SqlConnection();
cn.ConnectionString = "Data Source=.;Initial Catalog=Xadamat;Integrated Security=True";
SqlDataAdapter da = new SqlDataAdapter();
SqlCommand cmd = new SqlCommand();
cmd.Connection = cn;
cmd.CommandText = "SELECT Person_Inf.ID,Person_Inf.Dossier_Num,Person_Inf.Lname,Person_Inf.Fname,Person_Inf.Identity_Num,Person_Inf.Father,Person_Inf.Status,Person_Inf.Recruitment_Date,Person_Inf.Pensioner_Date,Person_Inf.Description,Visit_Inf.Reason,Visit_Inf.Concession,Visit_Inf.Deploy_Duration,Visit_Inf.Problem,Visit_Inf.Request,Visit_Inf.Offer,Visit_Inf.Membership FROM Person_Inf INNER JOIN Visit_Inf ON Person_Inf.ID=Visit_Inf.ID_Person AND Person_Inf.ID=@A OR Person_Inf.Dossier_Num=@A";
cmd.Parameters.AddWithValue("@A", Int64.Parse(textBox1.Text));
da.SelectCommand = new SqlCommand();
da.SelectCommand = cmd;
DataSet ds = new DataSet();
cn.Open();
da.Fill(ds, "T_Inf");
cn.Close();
dataGridView1.DataSource = ds;
dataGridView1.DataMember = "T_Inf";
}
}