Partilhar via


Introdução ao Azure Cosmos DB para MongoDB usando .NET

APLICA-SE A: MongoDB

Este artigo mostra como se conectar ao Azure Cosmos DB para MongoDB usando o .NET Core e os pacotes NuGet relevantes. Uma vez conectado, você pode executar operações em bancos de dados, coleções e documentos.

Nota

Os trechos de código de exemplo estão disponíveis no GitHub como um projeto .NET Core.

Documentação | de referência da API para MongoDB Pacote MongoDB (NuGet)

Pré-requisitos

Criar um novo aplicativo .NET Core

  1. Crie um novo aplicativo .NET Core em uma pasta vazia usando seu terminal preferido. Para esse cenário, você usará um aplicativo de console. Use o dotnet new comando para criar e nomear o aplicativo de console.

    dotnet new console -o app
    
  2. Adicione o pacote NuGet do MongoDB ao projeto de console. Use o dotnet add package comando que especifica o nome do pacote NuGet.

    dotnet add package MongoDB.Driver
    
  3. Para executar o aplicativo, use um terminal para navegar até o diretório do aplicativo e executar o aplicativo.

    dotnet run
    

Conectar-se ao Azure Cosmos DB para MongoDB com o driver nativo do MongoDB

Para se conectar ao Azure Cosmos DB com o driver nativo do MongoDB, crie uma instância da MongoClient classe. Essa classe é o ponto de partida para executar todas as operações em bancos de dados MongoDb. O construtor mais comum para MongoClient aceita uma cadeia de conexão, que você pode recuperar usando as seguintes etapas:

Obter nome do recurso

  1. Crie uma variável de shell para resourceGroupName.

    # Variable for resource group name
    resourceGroupName="msdocs-cosmos"
    
  2. Use o az cosmosdb list comando para recuperar o nome da primeira conta do Azure Cosmos DB em seu grupo de recursos e armazená-lo na variável de shell accountName .

    # Retrieve most recently created account name
    accountName=$(
        az cosmosdb list \
            --resource-group $resourceGroupName \
            --query "[0].name" \
            --output tsv
    )
    

Obter a cadeia de ligação

  1. Encontre a API para a cadeia de conexão do MongoDB na lista de cadeias de conexão da conta com o az cosmosdb keys list comando.

    az cosmosdb keys list --type connection-strings \
        --resource-group $resourceGroupName \
        --name $accountName 
    
  2. Registre os valores de CHAVE PRIMÁRIA . Você usará essas credenciais mais tarde.

Configurar variáveis de ambiente

Para usar os valores CONNECTION STRING dentro do seu código, defina esse valor no ambiente local que executa o aplicativo. Para definir a variável de ambiente, use seu terminal preferido para executar os seguintes comandos:

$env:COSMOS_CONNECTION_STRING = "<cosmos-connection-string>"

Criar MongoClient com cadeia de conexão

Defina uma nova instância da classe usando o construtor e a variável de cadeia de MongoClient conexão definida anteriormente.

// New instance of CosmosClient class
var client = new MongoClient(Environment.GetEnvironmentVariable("COSMOS_CONNECTION_STRING"));

var settings = client.Settings;

Console.WriteLine(settings.Server.Host);

Usar as classes de cliente MongoDB com o Azure Cosmos DB para API para MongoDB

Antes de começar a criar o aplicativo, vamos examinar a hierarquia de recursos no Azure Cosmos DB. O Azure Cosmos DB tem um modelo de objeto específico usado para criar e acessar recursos. O Azure Cosmos DB cria recursos em uma hierarquia que consiste em contas, bancos de dados, coleções e documentos.

Diagrama da hierarquia do Azure Cosmos DB DB, incluindo contas, bancos de dados, coleções e documentos.

Diagrama hierárquico mostrando uma conta do Azure Cosmos DB na parte superior. A conta tem dois nós de banco de dados filho. Um dos nós de banco de dados inclui dois nós de coleção filho. O outro nó do banco de dados inclui um único nó de coleção filho. Esse único nó de coleção tem três nós de doc filho.

Cada tipo de recurso é representado por uma ou mais classes C# associadas. Aqui está uma lista das classes mais comuns:

Classe Description
MongoClient Essa classe fornece uma representação lógica do lado do cliente para a camada API for MongoDB no Azure Cosmos DB. O objeto cliente é usado para configurar e executar solicitações no serviço.
MongoDatabase Essa classe é uma referência a um banco de dados que pode, ou não, existir no serviço ainda. O banco de dados é validado ou criado no lado do servidor quando você tenta executar uma operação contra ele.
Collection Essa classe é uma referência a uma coleção que também pode não existir no serviço ainda. A coleção é validada no lado do servidor quando você tenta trabalhar com ela.

Os guias a seguir mostram como usar cada uma dessas classes para criar seu aplicativo e gerenciar dados.

Guia:

Consulte também

Próximos passos

Agora que você se conectou a uma API para a conta do MongoDB, use o próximo guia para criar e gerenciar bancos de dados.