Exemple #1
0
 public void DeleteForum(ForumDeleteDto deletedForum)
 {
     if (ModelState.IsValid)
     {
         _forumservice.Delete(deletedForum);
     }
 }
Exemple #2
0
        /// <summary>
        /// 刪除看板(版內的文章,留言內容,按讚紀錄一併刪除)
        /// </summary>
        /// <param name="deletedForum"></param>
        public void Delete(ForumDeleteDto deletedForum)
        {
            //Guid b = _repoMsgs.GetAll2().FirstOrDefault(x => x.PostId == _posts.GetAll2().FirstOrDefault(x => x.ForumId == deletedForum.ForumId).PostId).MessageId;

            //刪除有按讚的版(未做完)
            //IEnumerable<LikeAndDislikeHistory> likes = _likes.GetAll2().Where(x => x.MessageId == _repoMsgs.GetAll2().First(y => y.PostId == _posts.GetAll2().First(z => z.ForumId == deletedForum.ForumId).PostId).MessageId);

            //foreach(LikeAndDislikeHistory like in likes)
            //{
            //    _likes.Delete(like);
            //}
            //_repoMsgs.SaveContext();

            //刪除未有按讚的版
            IEnumerable <ReposiveMessages> repoMsgs = _repoMsgs.GetAll2().Where(x => x.PostId == _posts.GetAll2().FirstOrDefault(y => y.ForumId == deletedForum.ForumId).PostId);

            foreach (ReposiveMessages msgs in repoMsgs)
            {
                _repoMsgs.Delete(msgs);
            }
            _repoMsgs.SaveContext();

            IEnumerable <Posts> oldPosts = _posts.GetAll2().Where(x => x.ForumId == deletedForum.ForumId);

            foreach (Posts post in oldPosts)
            {
                _posts.Delete(post);
            }
            _posts.SaveContext();

            Forums oldForum = _Forums.GetFirst(x => x.ForumId == deletedForum.ForumId);

            _Forums.Delete(oldForum);
            _Forums.SaveContext();
        }