public void RemoveChildren()
        {
            DebatePlatformContext db = new DebatePlatformContext();

            RemoveChildrenRecursive(db);
            db.SaveChanges();
        }
        public Argument AddParent()
        {
            DebatePlatformContext db = new DebatePlatformContext();

            Parent = db.Arguments.FirstOrDefault(a => a.ArgumentId == ParentId);
            return(Parent);
        }
 public void RemoveChildrenRecursive(DebatePlatformContext db)
 {
     AddChildren();
     foreach (Argument child in Children)
     {
         child.RemoveChildrenRecursive(db);
         db.Arguments.Remove(child);
     }
 }
        public Argument AddLink()
        {
            DebatePlatformContext db = new DebatePlatformContext();

            Link = db.Arguments.FirstOrDefault(a => a.ArgumentId == LinkId);
            if (Link != null)
            {
                Link.AddChildrenRecursive();
            }
            return(Link);
        }
        public List <Argument> AddChildren()
        {
            DebatePlatformContext db = new DebatePlatformContext();

            Children = db.Arguments
                       .Where(a => a.ParentId == ArgumentId)
                       .ToList();
            foreach (Argument child in Children)
            {
                child.AddParent();
                child.AddLink();
            }
            return(Children.ToList());
        }