Partager via


Gérer une collection dans Azure Cosmos DB for MongoDB à l’aide de .NET

S’APPLIQUE À : MongoDB

Gérez votre collection MongoDB stockée dans Azure Cosmos DB avec le pilote client MongoDB natif.

Notes

Les exemples d’extraits de code sont disponibles sur GitHub en tant que projet .NET.

Documentation de référence sur l’API pour MongoDB | Package MongoDB (NuGet)

Nommer une collection

Dans Azure Cosmos DB, une collection est analogue à une table dans base de données relationnelle. Lorsque vous créez une collection, le nom de la collection forme un segment de l’URI utilisé pour accéder à la ressource de collection et à tous les documents enfants.

Obtenir une instance de collection

Utilisez une instance de la classe Collection pour accéder à la collection sur le serveur.

Les extraits de code suivants supposent que vous avez déjà créé votre connexion client.

Création d'une collection

Pour créer une collection, insérez un document dans la collection.

// 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);

Annuler une collection

Annulez la collection de la base de données pour la supprimer définitivement. Toutefois, l’opération d’insertion ou de mise à jour suivante qui accède à la collection crée une collection avec ce nom.

client.GetDatabase("adventureworks").DropCollection("products");

Obtenir des index de collection

Un index est utilisé par le moteur de requête MongoDB pour améliorer les performances des requêtes de base de données.

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());
}

Voir aussi