//public int Delete(string FunctionID) //{ // using (var db = new BCBackContext()) // { // RFAFunction temp = db.RFAFunctions.FirstOrDefault(x => x.FunctionID == FunctionID); // if (null == temp) // return 0; // db.RFAFunctions.Remove(temp); // Action<string> deleteChildren = null; // deleteChildren = (parentId) => // { // List<RFAFunction> list = db.RFAFunctions.Where(x => x.ParentID == FunctionID).ToList<RFAFunction>(); // for (int i = 0; i < list.Count; i++) // { // var tempFunction = list[i]; // db.RFAFunctions.Remove(tempFunction); // deleteChildren(tempFunction.FunctionID); // } // }; // deleteChildren(temp.FunctionID); // return db.SaveChanges(); // } //} public int Add(FunctionDto obj) { using (var db = new BCEnterpriseContext()) { RFAFunction temp = new RFAFunction(); temp.FunctionID = obj.FunctionID; temp.MyID = obj.MyID; temp.Name = obj.Name; temp.ParentID = obj.ParentID; temp.Available = obj.Available; temp.Desription = obj.Desription; db.RFAFunctions.Add(temp); // db.Entry<RFAFunction>(temp).State = EntityState.Added; return(db.SaveChanges()); } }
//public List<RFAFunction> Select(Expression<Func<RFAFunction, bool>> foo) //{ // using (var db = new BCBackContext()) // { // List<RFAFunction> list = new List<RFAFunction>(); // list = db.RFAFunctions.Where(foo).ToList<RFAFunction>(); // return list; // } //} public int Update(FunctionDto obj) { using (var db = new BCBackContext()) { RFAFunction temp = db.RFAFunctions.Where(objx => objx.FunctionID.Equals(obj.FunctionID)).First(); if (temp == null) { return(0); } //temp.FunctionID = obj.FunctionID; temp.MyID = obj.MyID; temp.Name = obj.Name; //temp.ParentID = obj.ParentID; temp.Available = obj.Available; temp.Desription = obj.Desription; return(db.SaveChanges()); } }
private int DeleteFunctionsons(BCEnterpriseContext db, string FunctionID) { RFAFunction temp = db.RFAFunctions.FirstOrDefault(x => x.FunctionID.Equals(FunctionID)); if (null == temp) { return(0); } db.RFAFunctions.Remove(temp); List <RFAFunction> list = db.RFAFunctions.Where(x => x.ParentID.Equals(FunctionID)).ToList <RFAFunction>(); for (int i = 0; i < list.Count; i++) { if (0 == DeleteFunctionsons(db, list[i].FunctionID)) { break; } } return(db.SaveChanges()); }