Gerenciar um banco de dados MongoDB usando .NET
APLICA-SE A: MongoDB
Seu servidor MongoDB no Azure Cosmos DB está disponível no pacote NuGet do MongoDB .
Nota
Os trechos de código de exemplo estão disponíveis no GitHub como um projeto .NET.
Documentação | de referência da API para MongoDB Pacote MongoDB (NuGet)
Nomear um banco de dados
No Azure Cosmos DB, um banco de dados é análogo a um namespace. Quando você cria um banco de dados, o nome do banco de dados forma um segmento do URI usado para acessar o recurso de banco de dados e quaisquer recursos filho.
Uma vez criado, o URI de um banco de dados está neste formato:
https://<cosmos-account-name>.documents.azure.com/dbs/<database-name>
Criar uma instância de banco de dados
Você pode usar o MongoClient
para obter uma instância de um banco de dados ou criar um, se ele ainda não existir. A MongoDatabase
classe fornece acesso a coleções e seus documentos.
O trecho de código a seguir cria um novo banco de dados inserindo um documento em uma coleção. Lembre-se, o banco de dados não será criado até que seja necessário para esse tipo de operação.
var client = new MongoClient(Environment.GetEnvironmentVariable("MONGO_CONNECTION"));
client.GetDatabase("adventureworks").GetCollection<BsonDocument>("products").InsertOne(new BsonDocument() { { "Name", "surfboard" } });
Obter um banco de dados existente
Você também pode recuperar um banco de dados existente pelo nome usando o GetDatabase
método para acessar suas coleções e documentos.
var collections = client.GetDatabase("adventureworks").ListCollectionNames();
Console.WriteLine($"The database has {collections.ToList().Count} collection.");
Obter uma lista de todos os bancos de dados
Você pode recuperar uma lista de todos os bancos de dados no servidor usando o MongoClient
.
var dbFindList = client.ListDatabaseNames().ToList();
Esta técnica pode então ser usada para verificar se já existe uma base de dados.
var dbFound = dbFindList.FirstOrDefault(x => x == "adventureworks");
if (dbFound is not null)
{
Console.WriteLine($"{dbFound} database found");
}
else
{
Console.WriteLine($"{dbFound} database not found.");
}
Soltar um banco de dados
Um banco de dados é removido do servidor usando o DropDatabase
método na classe DB.
client.DropDatabase("adventureworks");