2015-05-19 8 views
6

मेरे पास दो पृष्ठ हैं, एक व्यवस्थापक है और दूसरा संकाय है। व्यवस्थापक संकाय के अधीन आवंटित करता है। संकाय केवल केवल आवश्यक घंटों का चयन करना चाहता है। मेरी समस्या यह है कि मैं अक्षम चेक बॉक्स के लिए अद्यतन क्वेरी नहीं करना चाहता हूं। मैंने नीचे दिए गए कोड का प्रयास किया है, लेकिन यह अक्षम चेक बॉक्स के लिए भी अपडेट हो रहा है।चेकबॉक्स अक्षम होने पर अद्यतन नहीं किया जाना चाहिए

using (SqlConnection con2 = new SqlConnection(ConfigurationManager.ConnectionStrings 
    ["ConnectionString"].ConnectionString)) 
    { 
    foreach (GridViewRow r in Gv1.Rows){ 
    if ((((
    (((CheckBox)(Gv1.Rows[r.RowIndex].FindControl("chkHour1"))).Checked == true 
|| ((CheckBox)(Gv1.Rows[r.RowIndex].FindControl("chkHour1"))).Checked == false) 
|| (((CheckBox)(Gv1.Rows[r.RowIndex].FindControl("chkHour2"))).Checked == true || ((CheckBox)(Gv1.Rows[r.RowIndex].FindControl("chkHour2"))).Checked == false) 
|| (((CheckBox)(Gv1.Rows[r.RowIndex].FindControl("chkHour3"))).Checked == true || ((CheckBox)(Gv1.Rows[r.RowIndex].FindControl("chkHour3"))).Checked == false) 
|| (((CheckBox)(Gv1.Rows[r.RowIndex].FindControl("chkHour4"))).Checked == true || ((CheckBox)(Gv1.Rows[r.RowIndex].FindControl("chkHour4"))).Checked == false) 
|| (((CheckBox)(Gv1.Rows[r.RowIndex].FindControl("chkHour5"))).Checked == true || ((CheckBox)(Gv1.Rows[r.RowIndex].FindControl("chkHour5"))).Checked == false) 
    )))) 
    { 
     SqlCommand comm; 
     CheckBox aa; 
     bool hour1 = (r.FindControl("chkHour1") as CheckBox).Checked; 
     bool hour2 = (r.FindControl("chkHour2") as CheckBox).Checked; 
     bool hour3 = (r.FindControl("chkHour3") as CheckBox).Checked; 
     bool hour4 = (r.FindControl("chkHour4") as CheckBox).Checked; 
     bool hour5 = (r.FindControl("chkHour5") as CheckBox).Checked; 
     string subject1 = ddlsubj.SelectedValue; 
     string subject2 = ddlsubj.SelectedValue; 
     string subject3 = ddlsubj.SelectedValue; 
     string subject4 = ddlsubj.SelectedValue; 
     string subject5 = ddlsubj.SelectedValue; 
     string datedif = r.Cells[0].Text; 
     aa=(CheckBox)sender; 
     con2.Open(); 
     comm = new SqlCommand(); 
     comm.Connection = con2; 
     comm.CommandType = CommandType.Text; 
     if (aa.Enabled==false) 
     { 
     comm = new SqlCommand("UPDATE test 
           SET aa=false 
           when subject1=CASE WHEN (@hour1)= 'false' THEN NULL 
           ELSE @subject1 END, 
           subject2=CASE WHEN (@hour2)= 'false' THEN NULL 
          ELSE @subject2 END, 
          subject3=CASE WHEN (@hour3)= 'false' THEN NULL 
          ELSE @subject3 END, 
          subject4=CASE WHEN (@hour4)= 'false' THEN NULL 
          ELSE @subject4 END, 
          subject5=CASE WHEN (@hour5)='false' THEN NULL 
          ELSE @subject5 END, 
          hour1 = CASE WHEN (@hour1)= 'false' THEN 'false' 
          ELSE 'true' END, 
          hour2 = CASE WHEN (@hour2)= 'false' THEN 'false' 
          ELSE 'true' END, 
          hour3 = CASE WHEN (@hour3)= 'false' THEN 'false' 
          ELSE 'true' END , 
          hour4 = CASE WHEN (@hour4)= 'false' THEN 'false' 
          ELSE 'true' END , 
          hour5 = CASE WHEN (@hour5)= 'false' THEN 'false' 
          ELSE 'true' END where [email protected]", con2); 
    } 
     else 
     { 
        comm = new SqlCommand("update test set aa=true 
          when subject1=CASE WHEN (@hour1)= 'false' THEN NULL 
          ELSE @subject1 END, 
          subject2=CASE WHEN (@hour2)= 'false' THEN NULL 
          ELSE @subject2 END, 
          subject3=CASE WHEN (@hour3)= 'false' THEN NULL 
          ELSE @subject3 END, 
          subject4=CASE WHEN (@hour4)= 'false' THEN NULL 
          ELSE @subject4 END, 
          subject5=CASE WHEN (@hour5)='false' THEN NULL 
          ELSE @subject5 END, 
          hour1 = CASE WHEN (@hour1)= 'false' THEN 'false' 
          ELSE 'true' END, 
          hour2 = CASE WHEN (@hour2)= 'false' THEN 'false' 
          ELSE 'true' END, 
          hour3 = CASE WHEN (@hour3)= 'false' THEN 'false' 
          ELSE 'true' END , 
          hour4 = CASE WHEN (@hour4)= 'false' THEN 'false' 
          ELSE 'true' END , 
          hour5 = CASE WHEN (@hour5)= 'false' THEN 'false' 
          ELSE 'true' END where [email protected]", con2); 
    } 
    comm.Parameters.AddWithValue("@subject1",subject1); 
    comm.Parameters.AddWithValue("@subject2", subject2); 
    comm.Parameters.AddWithValue("@subject3", subject3); 
    comm.Parameters.AddWithValue("@subject4", subject4); 
    comm.Parameters.AddWithValue("@subject5", subject5); 
    comm.Parameters.AddWithValue("@hour1", hour1); 
    comm.Parameters.AddWithValue("@datedif", datedif); 
    comm.Parameters.AddWithValue("@hour2", hour2); 
    comm.Parameters.AddWithValue("@hour3", hour3); 
    comm.Parameters.AddWithValue("@hour4", hour4); 
    comm.Parameters.AddWithValue("@hour5", hour5); 
    comm.ExecuteNonQuery(); 
    con2.Close(); 
     } 
     } 
    } 
+1

आपकी स्थिति ऐसी भ्रमित प्रतीत होती है और किसी भी परिदृश्य के लिए मिलती प्रतीत होती है। – Amit

+0

जहां से प्रेषक ऑब्जेक्ट आ रहा है – Sachu

+0

** एएसपीनेट के लिए नया हूं मैंने इन्हें केवल सक्षम चेक बॉक्स के लिए अपडेट करने की कोशिश की है, आप कुछ विचार सुझा सकते हैं ** –

उत्तर

1

आप पहले आईएफ स्टेटमेंट को हटाना चाहते हैं क्योंकि इसकी आवश्यकता नहीं है। यह जांच रहा है, जैसा कि अन्य ने कहा है, दोनों सत्य या (||) झूठे दोनों के लिए और यह हमेशा सच रहेगा।

दूसरा, कहीं भी नहीं देखें जहां आप जांचते हैं। सक्षम == गलत यह आप जो देख रहे हैं उसके लिए हो सकता है।

+0

** केवल सक्षम चेक बॉक्स के लिए यह अद्यतन कैसे बना सकता है और अक्षम चेक बॉक्स के लिए नहीं ** ** –

1

अपने कोड के अनुसार यदि चेक बॉक्स आप एक क्वेरी की जाएगी तथा यदि चेक बॉक्स सक्षम आप किसी अन्य क्वेरी

if (aa.Enabled==false) 
{ 

} 
else{ 

} 

प्रदर्शन अगर आप विकलांग चेक बॉक्स पर प्रदर्शन करने के लिए नहीं करना चाहती अक्षम किया गया है हिस्सा

नीचे हटाने
if (aa.Enabled==false) 
{ 

} 
+0

कोई काम नहीं कर रहा है –

संबंधित मुद्दे