السلام عليكم ورحمة الله وبركاته
لدي سؤال عن طريقة البحث
فمثلا لدينا بيانات خاصة بالمريض واريد الاستعلام عن امور معينة فمثلا اظهر لي جميع المرضى الذي لديهم الصفه X
ولدينا واجهة مستخدم -صفحة ويب-مصمة لذالك ..
ولدينا جملة استعلام تتضمن كل ذلك ولا خلاف عليها
سؤالي في العرف البرمجي ماهي الطريقة المناسبة لإتمام ذالك..
استخدمت if statement لتطبيق ذالك لكن وجودها لا يقوم بالمطلوب .. طبقتها في جزء معين , نجح الامر وعندما اريد اضافة جزء اخر اصبح معقدأ جداً ويصعب علي ترتيب الاحتمالات الي ممكن ان يستخدمها المستخدم
فمثلا اظهر المرضى في المدينة الفلانية الذين يحملون الصفة X
ولربما تفاصيل اخرى
هل من طريقة منظمة استطيع اخذ كل المدخلات( من CheckBoxاو TextBox) بصورة واحده وتطبيقها في جملة الاستعلام دون تعقيد او مشاكل
كود C#
String c1 = "", c2 = "", c3 = "";
string cc_yes="";
string cc_no="";
string region = "";
protected void showPatient()
{
string constring = @"Data Source=ASUS1-PC;Initial Catalog=banktissueVII;Integrated Security=True";
SqlConnection conn = conn = new SqlConnection(constring);
DataTable dt = new DataTable();
DataSet ds = new DataSet();
try
{
if (CheckBox1.Checked)
{
c1 = "Non-Chemo";
}
else
if (CheckBox2.Checked)
{
c2 = "Chemo";
}
else
if (CheckBox3.Checked)
{
c3 = "Plastic surgery";
}
if ((CheckBox2.Checked) && (CheckBox1.Checked))
{
c1 = "Non-Chemo";
c2 = "Chemo";
}
else
if ((CheckBox2.Checked) && (CheckBox3.Checked))
{
c2 = "Chemo";
c3 = "Plastic surgery";
}
if ((CheckBox1.Checked) && (CheckBox3.Checked))
{
c1 = "Non-Chemo";
c3 = "Plastic surgery";
}
else
if ((CheckBox2.Checked) && (CheckBox1.Checked) && (CheckBox3.Checked))
{
c1 = "Non-Chemo";
c2 = "Chemo";
c3 = "Plastic surgery";
}
if (CCYes.Checked){
cc_yes = "Yes";
}
else if(CCNo.Checked) {
cc_no = "No";
}
else if((CCNo.Checked) && (!CCYes.Checked)) {
cc_no = "No";
}
if((!CCNo.Checked) && ( CCYes.Checked)) {
cc_yes = "Yes";
}
else{
cc_yes = "Yes";
cc_no = "No";
}
region = regionText.Text.ToString();
string SelectCommand = "select * from showAllPatient()
where treatment='" + c1 + "' and treatment='" + c2 + "'and treatment='" +
c3 + "' or region ='" + region + "'
and clinical_char ='" + cc_yes + "' or clinical_char ='" + cc_no + "';";
using (SqlCommand cmd = new SqlCommand(SelectCommand, conn))
{
conn.Open();
SqlDataAdapter da = new SqlDataAdapter(SelectCommand, conn);
da.Fill(dt);
}}
catch (Exception ex)
{
Response.Write(ex.Message);
}
finally
{
conn.Close();
}
GridView2.DataSource = dt;
GridView2.DataBind();
}
protected void Button1_Click(object sender, EventArgs e)
{
clareSerch();
showPatient();
}
protected void clareSerch() {
c1="";
c2="";
c3 = "";
cc_yes = "";
cc_no = "";
region = "";
}