protected void updateAccessControl_Click(object sender, EventArgs e) { List <int> userIdList = new List <int>(); List <int> userGroupList = new List <int>(); List <KeyValuePair <string, int> > resourcePrivilegeList = new List <KeyValuePair <string, int> >(); Privilege priv = new Privilege(); int readPrivId = priv.GetPrivilegeId("read"); int writePrivId = priv.GetPrivilegeId("write"); int deletePrivId = priv.GetPrivilegeId("delete"); int createPrivId = priv.GetPrivilegeId("create"); if (userCheckBox.Checked) { int selectUserRow = userGroupGridView.SelectedIndex; userIdList.Add(Convert.ToInt16(userGroupGridView.Rows[selectUserRow].Cells[2].Text.ToString())); //foreach (GridViewRow row in userGroupGridView.Rows) //{ // CheckBox box = (CheckBox)row.FindControl("selectUserGroupCheckBox"); // if (box.Checked) // { // int userid = Convert.ToInt16(row.Cells[2].Text.ToString()); // userIdList.Add(userid); // } //} foreach (int userId in userIdList) { AccessControl accessObj = new AccessControl(); accessObj.ReleaseUserRows(userId, DbListBox.SelectedValue.ToString()); } foreach (GridViewRow row in odmInfoGridView.Rows) { CheckBox readbox = (CheckBox)row.FindControl("readStatusCheckBox"); if (readbox.Checked) { resourcePrivilegeList.Add(new KeyValuePair <string, int>(row.Cells[15].Text.ToString(), readPrivId)); } CheckBox updateBox = (CheckBox)row.FindControl("updateStatusCheckBox"); if (updateBox.Checked) { resourcePrivilegeList.Add(new KeyValuePair <string, int>(row.Cells[15].Text.ToString(), writePrivId)); } CheckBox deleteBox = (CheckBox)row.FindControl("deleteStatusCheckBox"); if (deleteBox.Checked) { resourcePrivilegeList.Add(new KeyValuePair <string, int>(row.Cells[15].Text.ToString(), deletePrivId)); } } foreach (int userId in userIdList) { foreach (KeyValuePair <string, int> kvp in resourcePrivilegeList) { string resourceId = kvp.Key; int privilegeId = kvp.Value; AccessControl accessObj = new AccessControl(); accessObj.SetUserAccess(resourceId, userId, privilegeId); } } } TemplateGridDisplay(); }