public async Task <IActionResult> Put(int id, [FromBody] ArticleAddOrUpdateViewModel article)
        {
            if (article == null)
            {
                return(BadRequest());
            }
            //使用FluentValidation验证属性
            if (!ModelState.IsValid)
            {
                return(new ValidationErrorResult(ModelState));
            }

            var result = await Repository.FindArticleByIdAsync(id);

            if (result == null)
            {
                return(BadRequest("找不到该文章"));
            }

            Mapper.Map(article, result);
            result.LastModify = DateTime.Now;

            if (!await UnitForWork.SaveAsync())
            {
                return(BadRequest("Save Error!"));
            }

            return(NoContent());
        }
        public async Task <IActionResult> Post([FromBody] ArticleAddOrUpdateViewModel articleAddResource)
        {
            if (articleAddResource == null)
            {
                return(BadRequest());
            }
            //使用FluentValidation验证属性
            if (!ModelState.IsValid)
            {
                return(new ValidationErrorResult(ModelState));
            }

            var article = Mapper.Map <ArticleAddOrUpdateViewModel, Article>(articleAddResource);

            article.Auther = "admin";
            article.Date   = DateTime.Now;


            Repository.PostArticle(article);
            if (!await UnitForWork.SaveAsync())
            {
                throw new Exception("保存失败!");
            }

            var resultViewModel   = Mapper.Map <Article, ArticleViewModel>(article).ToDynamic();
            var resultViewModelId = resultViewModel.Where(s => s.Key == "Id").FirstOrDefault().Value;

            resultViewModel.TryAdd("links", CreateHateoasLinks((int)resultViewModelId));

            return(CreatedAtRoute("GetSingleArticle", new { id = resultViewModelId }, resultViewModel));
        }