/// <summary> /// 绑定数据 /// </summary> private void DataBlsList() { try { List <Bd_Base_Dictionary> bPaseList = new Bd_Base_DictionaryBLL().GetListGroupByParentID(); ViewState["bPaseList"] = bPaseList; #region 排序 IEnumerable <Bd_Base_Dictionary> querys = null; querys = from aa in bPaseList orderby aa.ParentID select aa; bPaseList = querys.ToList <Bd_Base_Dictionary>(); #endregion List <Bd_Base_Dictionary> bPaseListNew = new List <Bd_Base_Dictionary>(); IEnumerable <IGrouping <string, Bd_Base_Dictionary> > query = bPaseList.GroupBy(cc => cc.ParentName, cc => cc); foreach (IGrouping <string, Bd_Base_Dictionary> info in query) { List <Bd_Base_Dictionary> sl = info.ToList <Bd_Base_Dictionary>();//分组后的集合 //也可循环得到分组后,集合中的对象,你可以用info.Key去控制 foreach (Bd_Base_Dictionary set in info) { bPaseListNew.Add(set); break; } } if (bPaseListNew != null && bPaseListNew.Count > 0) { blsList.DataSource = bPaseListNew; blsList.DataTextField = "ParentName"; blsList.DataValueField = "ParentID"; blsList.DataBind(); if (ViewState["parentID"] == null) { ViewState["parentName"] = blsList.Items[0].Text; ViewState["parentID"] = blsList.Items[0].Value; } DataRepBaseDictionary(); } else { blsList.DataSource = null; blsList.DataBind(); } } catch (Exception ex) { } }
/// <summary> /// 添加父级 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void btnAddParentName_Click(object sender, EventArgs e) { string msg = ""; try { #region 添加父级 Bd_Base_Dictionary model = new Bd_Base_Dictionary(); int parentID = new Bd_Base_DictionaryBLL().GetBaseDictionaryMaxParentID();//获取父级最大id parentID++; //model.id = Guid.NewGuid(); model.ParentID = parentID; model.ParentName = txtParentName.Text.Trim(); model.ChildID = 1; model.ChildName = ""; model.ChildDescription = ""; model.Remark = ""; bool result = (bool)baseDataManage.CallMethod("Bd_Base_Dictionary", "Insert", null, new Object[] { model }); if (result) { msg = "添加成功!"; DataBlsList(); } else { msg = "添加失败!"; } #endregion } catch (Exception) { msg = "操作失败!"; } finally { ScriptManager.RegisterStartupScript(this, GetType(), DateTime.Now.Ticks.ToString(), "showdialog('" + msg + "');", true); } }