Ejemplo n.º 1
0
        public void Publish(PublishArticleCommand command)
        {
            var targetId         = new ArticleId(command.AutherId);
            var targetArticleOpt = articleRepository.Find(targetId);

            targetArticleOpt.Match(
                article => article.Publish(),
                () => throw new ArticleCommandFailedException()
                );
        }
        public async Task <IActionResult> Publish([FromRoute] int articleId)
        {
            var command = new PublishArticleCommand(articleId);
            var result  = await _mediator.Send(command);

            if (result == false)
            {
                return(NotFound());
            }
            return(NoContent());
        }