Close Menu
Código Simples .NETCódigo Simples .NET
    Facebook X (Twitter) Instagram
    Trending
    • NewSQL em 2025: O Estado Atual, Tendências e o Futuro dos Bancos de Dados Relacionais Escaláveis
    • 12 Regras Essenciais para Reduzir a Latência de Aplicações
    • Cache Hit Ratio: Como uma Simples Métrica Pode Revolucionar sua Arquitetura
    • Como a Uber calcula o tempo estimado de chegada
    • 30 APIs Gratuitas para desenvolvedores
    • Por que escalar escrita é tão mais difícil do que escalar leitura?
    • MongoDB Analyzer para .NET: Visualize e otimize suas consultas de forma simples
    • Cardinalidade: O Conceito que Transforma o Desempenho de Bancos de Dados SQL e NoSQL
    Facebook X (Twitter) Instagram
    Código Simples .NETCódigo Simples .NET
    Código Simples .NETCódigo Simples .NET
    Home»Asp.net»C#»Introdução ao MongoDB com Azure CosmosDB

    Introdução ao MongoDB com Azure CosmosDB

    Jhonathan SoaresBy Jhonathan Soares10 de julho de 20172 Mins Read C#
    Share
    Facebook Twitter LinkedIn WhatsApp Copy Link

    Com o lançamento do Azure CosmosDB que foi o recente lançamento da Microsoft para soluções de armazenamento de dados com o conceito de multi-model, novas possibilidades surgiram e a conexão com CosmosDB através da API de MongoDB é uma delas.

    De acordo com a documentação do Azure Cosmos DB pela Microsoft:
    “O Azure Cosmos DB é o banco de dados multi-modelo globalmente distribuído da Microsoft. Com o clique de um botão, o Azure Cosmos DB permite escalar elasticamente e de forma independente o throughput e o armazenamento em qualquer uma das regiões geográficas do Azure. Ele oferece throughput, latência, disponibilidade, E garantias de consistência com acordos abrangentes de nível de serviço (SLAs), algo que nenhum outro serviço de banco de dados pode oferecer. O Azure Cosmos DB contém um mecanismo de banco de dados, otimizado, baseado em recursos e otimizado para escrita que suporta nativamente vários modelos de dados: valor-chave, documentos e gráficos , E colunar. Ele também suporta muitas APIs para acessar dados incluindo MongoDB, DocumentDB SQL, Gremlin (preview) e Azure Tables (preview), de forma extensível “.

    Este artigo girará em torno de como criar servidor de banco de dados MongoDB na nuvem Azure e, em seguida, conecte-o com sua aplicação.

    1. Entre no portal Azure .

    2. Vá para Novo

    3. Digite MongoDB na barra de pesquisa.

    4. Selecione Database como um serviço para MongoDB

    5. Clique no botão Criar

    6. Preencha os detalhes e clique em Criar

    7. Depois do seu grupo de recursos e quando os recursos forem implantados com êxito, clique nele para ver.

    8. Inicialmente, sua conta no Azure Cosmos DB não terá nenhum banco de dados ou coleção. Para criar um, clique em Adicionar coleção.

    9. Preencha os detalhes e clique em OK. Depois de fazer isso, sua coleção será mostrada.

    10. Clique no Data Explorer e execute consultas do Mongo como o servidor local Mongo.

    11. Agora, clique em Cadeia de conexão e copie a string de conexão.

    Com isto terminamos a parte “burocrática”. Criamos um servidor de CosmosDB com a API de MongoDB. Agora veja um pequeno exemplo de conexão com o driver do MongoDB com conexão para o Cosmos

        using System;  
        using System.Collections.Generic;  
        using System.Linq;  
        using System.Text;  
        using System.Threading.Tasks;  
        using MongoDB.Driver;  
        using MongoDB.Bson;  
          
        namespace ConsAppMongoDBCRUD  
        {  
            class Program  
            {  
                static void Main(string[] args)  
                {  
                    try  
                    {  
                        MongoClient dbClient = new MongoClient("<sua conection string>");  
          
                        //Listagem de bancos
                        var dbList = dbClient.ListDatabases().ToList();  
          
                        Console.WriteLine("Bancos disponíveis :");  
                        foreach (var item in dbList)  
                        {  
                            Console.WriteLine(item);  
                        }  
          
                        Console.WriteLine("\n\n");  
          
                        //Get Database and Collection  
                        IMongoDatabase db = dbClient.GetDatabase("MyWorkMongoDB");  
                        var collList = db.ListCollections().ToList();  
                        Console.WriteLine("Suas coleções :");  
                        foreach (var item in collList)  
                        {  
                            Console.WriteLine(item);  
                        }  
          
                        var personColl = db.GetCollection<BsonDocument>("PersonsCollection");  
          
                        //CREATE  
                        BsonElement personFirstNameElement = new BsonElement("PersonFirstName", "Sankhojjal");  
          
                        BsonDocument personDoc = new BsonDocument();  
                        personDoc.Add(personFirstNameElement);  
                        personDoc.Add(new BsonElement("PersonAge", 23));  
          
                        personColl.InsertOne(personDoc);  
          
                        //UPDATE  
                        BsonElement updatePersonFirstNameElement = new BsonElement("PersonFirstName", "Souvik");  
          
                        BsonDocument updatePersonDoc = new BsonDocument();  
                        updatePersonDoc.Add(updatePersonFirstNameElement);  
                        updatePersonDoc.Add(new BsonElement("PersonAge", 24));  
          
                        BsonDocument findPersonDoc = new BsonDocument(new BsonElement("PersonFirstName", "Sankhojjal"));  
          
                        var updateDoc = personColl.FindOneAndReplace(findPersonDoc, updatePersonDoc);  
          
                        Console.WriteLine(updateDoc);  
          
                        //DELETE  
                        BsonDocument findAnotherPersonDoc = new BsonDocument(new BsonElement("PersonFirstName", "Sourav"));  
          
                        personColl.FindOneAndDelete(findAnotherPersonDoc);  
          
                        //READ  
                        var resultDoc = personColl.Find(new BsonDocument()).ToList();  
                        foreach (var item in resultDoc)  
                        {  
                            Console.WriteLine(item.ToString());  
                        }  
                    }  
                    catch (Exception ex)  
                    {  
                        Console.WriteLine(ex.Message);  
                    }  
          
                    Console.ReadKey();  
                }  
            }  
        }   
    
    

     

    Com isto fizemos um pequeno CRUD com MongoDB utilizando os drivers oficiais de conexão diretamente no CosmosDB. Você pode ver mais sobre MongoDB aqui.

    O que você achou da proposta do CosmosDB?

    Um grande abraço!

    Share. Facebook Twitter LinkedIn Telegram WhatsApp Copy Link
    Jhonathan Soares
    • Website
    • Facebook
    • X (Twitter)
    • LinkedIn

    Criador do blog Código Simples e com mais 15 anos de experiência em TI, com títulos de MVP Microsoft na área de Visual Studio Development, Neo4j Top 50 Certificate, Scrum Master e MongoDB Evangelist.

    Posts Relacionados

    MongoDB Analyzer para .NET: Visualize e otimize suas consultas de forma simples

    NoSql 7 de fevereiro de 20255 Mins Read

    Cardinalidade: O Conceito que Transforma o Desempenho de Bancos de Dados SQL e NoSQL

    NoSql Sql 14 de janeiro de 20257 Mins Read

    O que é a Ecma e qual é sua relação com C#?

    C# Post do Leitor 29 de julho de 20247 Mins Read
    Newsletter

    Digite seu endereço de e-mail para receber notificações de novas publicações por e-mail.

    Junte-se a 25mil outros assinantes
    Posts recentes
    • NewSQL em 2025: O Estado Atual, Tendências e o Futuro dos Bancos de Dados Relacionais Escaláveis
    • 12 Regras Essenciais para Reduzir a Latência de Aplicações
    • Cache Hit Ratio: Como uma Simples Métrica Pode Revolucionar sua Arquitetura
    • Como a Uber calcula o tempo estimado de chegada
    • 30 APIs Gratuitas para desenvolvedores
    Categorias
    • Arquitetura (14)
      • Testes (2)
    • Asp.net (120)
      • C# (89)
      • Mvc (13)
    • Banco de dados (90)
      • NoSql (58)
      • Sql (38)
    • Boas práticas (29)
      • Gestão & Produtividade (1)
      • Metodologias Ágeis (6)
    • Cursos (52)
    • Dicas (105)
    • Front-End (92)
    • IA (1)
    • Linux (6)
    • NodeJS (4)
    • Post do Leitor (9)
    • Python (5)
    • Seo (12)
    • Tecnologia (30)
      • ITIL (1)
      • Padrões de Projeto (4)
    • Testes (2)

    VEJA TAMBÉM

    Cursos
    12 de fevereiro de 20166 Mins Read

    1000 livros gratuitos sobre programação!

    Olha que dica bacana! A pagina só com livros sobre programação é mantida no GitHub…

    30 APIs Gratuitas para desenvolvedores

    Facebook X (Twitter) Instagram LinkedIn

    Type above and press Enter to search. Press Esc to cancel.

    Vá para versão mobile