private void treeView2_AfterCheck(object sender, TreeViewEventArgs e) { if (e.Node.Tag.ToString().Length > 1 && treeView1.SelectedNode.Name != "limit") { tbOperLimit ol = new tbOperLimit(); ol.vcLimitCode = treeView1.SelectedNode.Name; ol.vcMenu1 = e.Node.Tag.ToString().Substring(0, 1); ol.vcMenu2 = e.Node.Tag.ToString().Substring(1, 1); using (AMSEntities amsContext = new AMSEntities()) { try { //amsContext.s tbOperLimit ol2 = amsContext.tbOperLimit.FirstOrDefault(l => l.vcLimitCode == ol.vcLimitCode && l.vcMenu1 == ol.vcMenu1 && l.vcMenu2 == ol.vcMenu2); if (e.Node.Checked) { if (ol2 == null) { amsContext.AddTotbOperLimit(ol); amsContext.SaveChanges(); } } else { if (ol2 != null) { amsContext.DeleteObject(ol2); amsContext.SaveChanges(); } } } catch (Exception ex) { ErrorLog.Write(this, ex); } } } }