public void Executar(ObterPostRequisicao requisicao) { var resultado = new ObterPostResultado(); var post = new Post(); if (String.IsNullOrWhiteSpace(requisicao.Url)) { post = this.postRepositorio.ObterCodigo(requisicao.Codigo); } else { post = this.postRepositorio.ObterPorUrl(requisicao.Url); } resultado.Codigo = post.Codigo; resultado.CaminhoDaImagemDaCapa = post.CaminhoDaImagemDaCapa; resultado.Conteudo = post.Conteudo; resultado.Data = post.Data; resultado.Tags = post.Tags; resultado.Titulo = post.Titulo; resultado.Url = post.Url; resultado.Comentarios = post.Comentarios.Select(c => new ObterPostResultado.Comentario { Nome = c.Nome, Email = c.Email, Data = c.Data, Mensagem = c.Mensagem }); Apresentador.Apresentar(resultado); }
public void Apresentar(ObterPostResultado resultado) { Post = new PostDetalhadoViewModel { Codigo = resultado.Codigo, CaminhoDaImagemDaCapa = resultado.CaminhoDaImagemDaCapa, Conteudo = resultado.Conteudo, Titulo = resultado.Titulo, DataPorExtenso = resultado.Data.ToString("MMMM dd, yyyy", CultureInfo.CurrentCulture), Tags = String.Join(", ", resultado.Tags), Url = resultado.Url, Comentarios = resultado.Comentarios.Select(c => new ComentarioViewModel { Nome = c.Nome, Email = c.Email, Mensagem = c.Mensagem, Data = c.Data.ToString("dd/MM/yyyy hh:mm:ss") }).OrderByDescending(c => c.Data) }; }