public string UpdatePermission(string key) { string[] array; array = key.Split('&'); string[] arrkey; Dictionary <string, object> keyvalue = new Dictionary <string, object>(); foreach (string i in array) { arrkey = i.ToString().Split('='); keyvalue.Add(arrkey[0], arrkey[1]); } if (!keyvalue.ContainsKey("parentid")) { return("000001"); //模块父ID为空,返回失败。 } where.Add("ParentId", keyvalue["parentid"]); List <AdminMenuModule> MenuList = MenuModuleBLL.GetAll(where); foreach (AdminMenuModule Module in MenuList) { string add = string.Format("add{0}", Module.ModuleId); string edit = string.Format("edit{0}", Module.ModuleId); string del = string.Format("del{0}", Module.ModuleId); string look = string.Format("look{0}", Module.ModuleId); int adminid = 0; int groupid = 0; string permissionType = ""; if (keyvalue.ContainsKey("adminid")) { adminid = Int32.Parse(keyvalue["adminid"].ToString()); } if (keyvalue.ContainsKey("groupid")) { groupid = Int32.Parse(keyvalue["groupid"].ToString()); } int menuid = Int32.Parse(Module.ModuleId.ToString()); if (keyvalue.ContainsKey("m_type")) { permissionType = keyvalue["m_type"].ToString(); } Permission.ClearPermission(adminid, groupid, menuid, permissionType); if (keyvalue.ContainsKey(add)) { int addfunc = Int32.Parse(keyvalue[add].ToString()); Permission.CreatePermissionAndFunction(adminid, groupid, menuid, permissionType, addfunc); } if (keyvalue.ContainsKey(edit)) { int editfunc = Int32.Parse(keyvalue[edit].ToString()); Permission.CreatePermissionAndFunction(adminid, groupid, menuid, permissionType, editfunc); } if (keyvalue.ContainsKey(del)) { int delfunc = Int32.Parse(keyvalue[del].ToString()); Permission.CreatePermissionAndFunction(adminid, groupid, menuid, permissionType, delfunc); } if (keyvalue.ContainsKey(look)) { int lookfunc = Int32.Parse(keyvalue[look].ToString()); Permission.CreatePermissionAndFunction(adminid, groupid, menuid, permissionType, lookfunc); } } return("000000"); }