Beispiel #1
0
        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 }));
        }
Beispiel #2
0
        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 }));
        }
Beispiel #3
0
        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 }));
        }