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