10-02-19, 01:26 PM
اخوتي الاعزاء واجهت مشكلة مع زر حفظ صلاحيات محدد للمستخدمين والمشكلة هي عند حفظ الصلاحيات يعطي خطا (لم يتم تعيين مرجع لكائن مثيل)
و الكود مدرج ادناه و الخطا موضح في الصورة
و الكود مدرج ادناه و الخطا موضح في الصورة
كود :
{
int userId = Convert.ToInt32(list_user.SelectedValue);
for (int i = 0; i < dataGridView1.Rows.Count; i++)
{
int Screen_No = Convert.ToInt32(dataGridView1.Rows[i].Cells[0].Value);
Boolean Dis = dataGridView1.Rows[i].Cells[3].Value.Equals(true || false);
Boolean Add = dataGridView1.Rows[i].Cells[4].Value.Equals(true || false);
Boolean Edit = dataGridView1.Rows[i].Cells[5].Value.Equals(true || false);
Boolean Delete = dataGridView1.Rows[i].Cells[6].Value.Equals(true || false);
SqlCommand cmd = new SqlCommand("UPDATE TB_Priv SET Priv_Display=@Priv_Display,Priv_Add=@Priv_Add,Priv_Edit=@Priv_Edit,Priv_Delete=@Priv_Delete where Priv_User_ID=@User_ID and Priv_Screen_ID=@Screen_ID", con);
cmd.Parameters.Add(new SqlParameter("@Priv_Display",SqlDbType.Bit)).Value = Dis;
cmd.Parameters.Add(new SqlParameter("@Priv_Add", SqlDbType.Bit)).Value = Add;
cmd.Parameters.Add(new SqlParameter("@Priv_Edit", SqlDbType.Bit)).Value = Edit;
cmd.Parameters.Add(new SqlParameter("@Priv_Delete", SqlDbType.Bit)).Value = Delete;
cmd.Parameters.Add(new SqlParameter("@User_ID", SqlDbType.Int)).Value = userId;
cmd.Parameters.Add(new SqlParameter("@Screen_ID", SqlDbType.Int)).Value = Screen_No;
con.Open();
cmd.ExecuteNonQuery();
con.Close();
}
MessageBox.Show("تم التعديل");
}