Een verzameling beheren in Azure Cosmos DB voor MongoDB met behulp van .NET
VAN TOEPASSING OP: MongoDB
Beheer uw MongoDB-verzameling die is opgeslagen in Azure Cosmos DB met het systeemeigen MongoDB-clientstuurprogramma.
Notitie
De voorbeeldcodefragmenten zijn beschikbaar op GitHub als een .NET-project.
Api voor MongoDB-referentiedocumentatie | MongoDB-pakket (NuGet)
Een verzameling een naam opgeven
In Azure Cosmos DB is een verzameling vergelijkbaar met een tabel in een relationele database. Wanneer u een verzameling maakt, vormt de naam van de verzameling een segment van de URI die wordt gebruikt voor toegang tot de verzamelingsresource en eventuele onderliggende documenten.
Verzamelingsexemplaren ophalen
Gebruik een exemplaar van de klasse Verzameling om toegang te krijgen tot de verzameling op de server.
Bij de volgende codefragmenten wordt ervan uitgegaan dat u de clientverbinding al hebt gemaakt.
Een verzameling maken
Als u een verzameling wilt maken, voegt u een document in de verzameling in.
- MongoClient.Database.Collection
- MongoClient.Database.Collection.InsertOne
- MongoClient.Database.Collection.InsertMany
// insert one document
var product = new BsonDocument
{
{ "name", "Sand Surfboard" },
{ "category", "gear-surf-surfboards" },
{ "count", 1 }
};
client.GetDatabase("adventureworks").GetCollection<BsonDocument>("products").InsertOne(product);
// insert many documents
var products = new List<BsonDocument>()
{
new BsonDocument
{
{ "name", "Sand Surfboard" },
{ "category", "gear-surf-surfboards" },
{ "count", 1 }
},
new BsonDocument
{
{ "name", "Ocean Surfboard" },
{ "category", "gear-surf-surfboards" },
{ "count", 5 }
}
};
client.GetDatabase("adventureworks").GetCollection<BsonDocument>("products").InsertMany(products);
Een verzameling verwijderen
Verwijder de verzameling uit de database om deze permanent te verwijderen. De volgende invoeg- of updatebewerking die toegang heeft tot de verzameling, maakt echter een nieuwe verzameling met die naam.
client.GetDatabase("adventureworks").DropCollection("products");
Verzamelingsindexen ophalen
Een index wordt gebruikt door de MongoDB-query-engine om de prestaties van databasequery's te verbeteren.
var indexes = client.GetDatabase("adventureworks").GetCollection<BsonDocument>("products").Indexes;
var count = 0;
using (var cursor = await indexes.ListAsync())
{
do
{
if (cursor.Current != null)
{
foreach (var index in cursor.Current)
{
Console.WriteLine(cursor.Current);
count++;
}
}
}
while (await cursor.MoveNextAsync());
}