public async Task <ActionResult> NovoComentario(NovoComentarioModel model) { if (!ModelState.IsValid) { return(RedirectToAction("Publicacao", new { id = model.PublicacaoId })); } var comentario = new Comentario { Autor = User.Identity.Name, Conteudo = model.Conteudo, DataCriacao = DateTime.UtcNow }; await daoPublicacao.InserirComentarioAsync(model.PublicacaoId, comentario); return(RedirectToAction("Publicacao", new { id = model.PublicacaoId })); }
public async Task <ActionResult> NovoComentario(NovoComentarioModel model) { if (!ModelState.IsValid) { return(RedirectToAction("Publicacao", new { id = model.PublicacaoId })); } Comentario comentario = new Comentario { Autor = User.Identity.Name, Conteudo = model.Conteudo, DataCriacao = DateTime.UtcNow }; await _mongo.Publications.UpdateOneAsync( Builders <Publicacao> .Filter.Eq(f => f.Id, model.PublicacaoId), Builders <Publicacao> .Update.Push(p => p.Comentarios, comentario) ); return(RedirectToAction("Publicacao", new { id = model.PublicacaoId })); }
public async Task <ActionResult> NovoComentario(NovoComentarioModel model) { if (!ModelState.IsValid) { return(RedirectToAction("Publicacao", new { id = model.PublicacaoId })); } var comment = new Comentario { Autor = User.Identity.Name, Conteudo = model.Conteudo, DataCriacao = DateTime.UtcNow }; var connectandoMongoDB = new AcessoMongoDB(); var construtor = Builders <Publicacao> .Filter; var condicao = construtor.Eq(x => x.Id, model.PublicacaoId); var construtorAlteracao = Builders <Publicacao> .Update; var condicaoAlteracao = construtorAlteracao.Push(x => x.Comentarios, comment); await connectandoMongoDB.Publicacoes.UpdateOneAsync(condicao, condicaoAlteracao); return(RedirectToAction("Publicacao", new { id = model.PublicacaoId })); }