public async Task SalvaMensagemBanco(string link, string msgSite, int usuarioId, int caminhaoId, string sender) { Mensagem msg = new Mensagem() { CaminhaoId = caminhaoId, UsuarioId = usuarioId, DataHora = DateTime.Now, Corpo = msgSite, LinkAudio = link, Sender = sender, }; _ctx.Mensagens.Add(msg); await _ctx.SaveChangesAsync(); MensagemCaminhaoMongoDB msgCaminhao = new MensagemCaminhaoMongoDB() { MensagemId = msg.MensagemId, CaminhaoId = caminhaoId, UsuarioId = usuarioId, DataHora = msg.DataHora, LinkAudio = link }; var connectionString = "mongodb+srv://aplicacao:[email protected]/test?retryWrites=true&w=majority"; var client = new MongoClient(connectionString); IMongoDatabase db = client.GetDatabase("mileniotech"); IMongoCollection <MensagemCaminhaoMongoDB> caminhao = db.GetCollection <MensagemCaminhaoMongoDB>("mensagemCaminhao"); await caminhao.InsertOneAsync(msgCaminhao); }
public async Task <string> GetLinkAudioNaFilaDoMongoPraChatterBox(int caminhaoId) { var connectionString = "mongodb+srv://aplicacao:[email protected]/test?retryWrites=true&w=majority"; var client = new MongoClient(connectionString); IMongoDatabase db = client.GetDatabase("mileniotech"); IMongoCollection <MensagemCaminhaoMongoDB> caminhao = db.GetCollection <MensagemCaminhaoMongoDB>("mensagemCaminhao"); SortDefinition <MensagemCaminhaoMongoDB> sortCaminhaoData = Builders <MensagemCaminhaoMongoDB> .Sort.Ascending("MensagemId"); var FilterBuilderCaminhao = Builders <MensagemCaminhaoMongoDB> .Filter; FilterDefinition <MensagemCaminhaoMongoDB> filterCaminhaoId = FilterBuilderCaminhao.Eq(d => d.CaminhaoId, caminhaoId); FindOptions <MensagemCaminhaoMongoDB> optionsCaminhao = new FindOptions <MensagemCaminhaoMongoDB> { Sort = sortCaminhaoData }; MensagemCaminhaoMongoDB Mensagem = (await caminhao.FindAsync(filterCaminhaoId, optionsCaminhao).Result.ToListAsync()).FirstOrDefault(); if (Mensagem != null) { string Link = Mensagem.LinkAudio; FilterDefinition <MensagemCaminhaoMongoDB> filterMensagemId = FilterBuilderCaminhao.Eq(d => d._id, Mensagem._id); caminhao.DeleteOne(filterMensagemId); return(Link); } else { return(String.Empty); } }