public IErrorsInfo RemoveChildEntities(int EntityID) { try { // CurrentEntity = CurrentView.Entity[EntityListIndex(ViewID, EntityID)]; var ls = DataView.Entities.Where(x => x.ParentId == EntityID); foreach (EntityStructure item in ls.ToList()) { if (DataView.Entities.Where(y => y.ParentId == item.Id).Any()) { RemoveChildEntities(item.Id); } DataView.Entities.Remove(DataView.Entities[EntityListIndex(item.Id)]); EntitiesNames.Remove(DataView.Entities[EntityListIndex(item.Id)].EntityName); } DMEEditor.AddLogMessage("Success", "Removed Child entities", DateTime.Now, 0, null, Errors.Ok); } catch (Exception ex) { string mes = "Could not Remove Child entities"; DMEEditor.AddLogMessage(ex.Message, mes, DateTime.Now, -1, mes, Errors.Failed); }; return(DMEEditor.ErrorObject); }
public IErrorsInfo RemoveEntity(int EntityID) { DMEEditor.ErrorObject.Flag = Errors.Ok; try { foreach (EntityStructure item in DataView.Entities.Where(x => x.ParentId == EntityID).ToList()) { RemoveEntity(item.Id); } DataView.Entities.Remove(DataView.Entities[EntityListIndex(EntityID)]); EntitiesNames.Remove(DataView.Entities[EntityListIndex(EntityID)].EntityName); } catch (Exception ex) { DMEEditor.AddLogMessage("Fail", ex.Message, DateTime.Now, -1, "", Errors.Failed); } return(DMEEditor.ErrorObject); }