Example #1
0
        public async Task<IActionResult> CreateOrUpdate(InputArticleDto article)
        {
            if (ModelState.IsValid)
            {

                try
                {
                    if (article.Id <= 0)
                    {
                        var result = await _contentServices.CreateArticle(article);

                        return Json(new { success = true, data = result });
                    }
                    else
                    {

                        var result = _contentServices.UpdateArticle(article);

                        return Json(new { success = true, data = result });
                    }

                }
                catch (System.Exception ex)
                {
                    return Json(new { success = false, errorMessage = ex.Message });
                }
            }
            return Json(new
            {
                success = false,
                errorMessage = ModelState.Values.FirstOrDefault().Errors.FirstOrDefault().ErrorMessage,
                data = ModelState.Values,
            });
        }
Example #2
0
        public async Task<ArticleDto> CreateArticle(InputArticleDto input)
        {
            var entity = input.Map<Article>();
            if (input.CategoryId != 0)
            {
                entity.Category = await _categoryRepository.GetAsync(input.CategoryId);
            }
            var result = _articleRepository.Add(entity);
            await _unitOfWork.Context.SaveChangesAsync();
            await AddTags(result, input.Tags);

            return result.Map<ArticleDto>();
        }
Example #3
0
        public async Task<ArticleDto> UpdateArticle(InputArticleDto input)
        {
            var entity = await _articleRepository.GetAsync(input.Id);
            if (input.CategoryId != 0)
            {
                entity.Category = await _categoryRepository.GetAsync(input.CategoryId);
            }
            entity.Title = input.Title;
            entity.Content = input.Content;
            entity.Markdown = input.Markdown;
            entity.UpdatedDate = DateTime.Now;
            entity.PicUrl = input.PicUrl;
            entity.Summary = input.Summary;
	        entity.IsDraft = input.IsDraft;

            await AddTags(entity, input.Tags);

            var result = _articleRepository.Update(entity);

            return result.Map<ArticleDto>();
        }