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);
        }