public object Put(Guid id, [FromBody] ArticleModificationData value)
        {
            Article article;

            try
            {
                article = _articleService.GetByID(id);
                DataTransfer.ModifyArticle(article, value);
                var validationResults = new ArticleValidator().Validate(article);
                var errorString       = JsonConvert.SerializeObject(validationResults.Errors);
                var jsonResult        = Json(errorString);

                if (!validationResults.IsValid)
                {
                    jsonResult.StatusCode = 400;
                }

                try
                {
                    _articleService.Update(article);
                    jsonResult.Value += JsonConvert.SerializeObject(article);
                }
                catch (Exception ex)
                {
                    return(jsonResult);
                }
                return(jsonResult);
            }
            catch (Exception ex)
            {
                return(new StatusCodeResult(404));
            }
        }
예제 #2
0
 public static void ModifyArticle(Article article, ArticleModificationData data)
 {
     article.PublicationDate = data.PublicationDate;
     article.Summary         = data.Summary;
     article.Title           = data.Title;
     article.Views           = data.Views;
     article.Author          = data.Author;
     article.IsPublished     = data.IsPublished;
     article.Body            = data.Body;
 }