Delen via


Een MongoDB-database beheren met .NET

VAN TOEPASSING OP: MongoDB

Uw MongoDB-server in Azure Cosmos DB is beschikbaar via het MongoDB NuGet-pakket.

Notitie

De voorbeeldcodefragmenten zijn beschikbaar op GitHub als een .NET-project.

Api voor MongoDB-referentiedocumentatie | MongoDB-pakket (NuGet)

Een database een naam opgeven

In Azure Cosmos DB is een database vergelijkbaar met een naamruimte. Wanneer u een database maakt, vormt de databasenaam een segment van de URI die wordt gebruikt voor toegang tot de databaseresource en eventuele onderliggende resources.

Zodra de URI voor een database is gemaakt, heeft deze indeling:

https://<cosmos-account-name>.documents.azure.com/dbs/<database-name>

Een database-exemplaar maken

U kunt de database MongoClient gebruiken om een exemplaar van een database op te halen of er een te maken als deze nog niet bestaat. De MongoDatabase klasse biedt toegang tot verzamelingen en hun documenten.

Met het volgende codefragment wordt een nieuwe database gemaakt door een document in te voegen in een verzameling. Vergeet niet dat de database pas wordt gemaakt als deze nodig is voor dit type bewerking.

var client = new MongoClient(Environment.GetEnvironmentVariable("MONGO_CONNECTION"));

client.GetDatabase("adventureworks").GetCollection<BsonDocument>("products").InsertOne(new BsonDocument() { { "Name", "surfboard" } });

Een bestaande database ophalen

U kunt ook een bestaande database op naam ophalen met behulp van de GetDatabase methode voor toegang tot de verzamelingen en documenten.

var collections = client.GetDatabase("adventureworks").ListCollectionNames();
Console.WriteLine($"The database has {collections.ToList().Count} collection.");

Een lijst met alle databases ophalen

U kunt een lijst met alle databases op de server ophalen met behulp van de MongoClient.

var dbFindList = client.ListDatabaseNames().ToList();

Deze techniek kan vervolgens worden gebruikt om te controleren of er al een database bestaat.

var dbFound = dbFindList.FirstOrDefault(x => x == "adventureworks");
if (dbFound is not null)
{
    Console.WriteLine($"{dbFound} database found");
}
else
{
    Console.WriteLine($"{dbFound} database not found.");
}

Een database verwijderen

Een database wordt verwijderd van de server met behulp van de DropDatabase methode in de DB-klasse.

client.DropDatabase("adventureworks");

Zie ook