Udostępnij za pośrednictwem


Zarządzanie dokumentem w usłudze Azure Cosmos DB dla bazy danych MongoDB przy użyciu platformy .NET

DOTYCZY: MongoDB

Zarządzanie dokumentami bazy danych MongoDB przy użyciu możliwości wstawiania, aktualizowania i usuwania dokumentów.

Uwaga

Przykładowe fragmenty kodu są dostępne w witrynie GitHub jako projekt platformy .NET.

Dokumentacja referencyjna interfejsu API dla bazy danych | MongoDB — pakiet MongoDB (NuGet)

Wstawianie dokumentu

Wstaw jeden lub wiele dokumentów zdefiniowanych za pomocą schematu JSON do kolekcji.

// insert one document
var product = new BsonDocument
{
    { "name", "Sand Surfboard" },
    { "category", "gear-surf-surfboards" },
    { "count", 1 }
};

collection.InsertOne(product);

// insert many documents
var products = new List<BsonDocument>() 
{
    new BsonDocument
    {
        { "name", "Lake Surfboard" },
        { "category", "gear-surf-surfboards" },
        { "count", 1 }
    },
    new BsonDocument
    {
        { "name", "Ocean Surfboard" },
        { "category", "gear-surf-surfboards" },
        { "count", 5 }
    }
};

collection.InsertMany(products);

Aktualizowanie dokumentu

Aby zaktualizować dokument, określ filtr zapytania używany do znalezienia dokumentu wraz z zestawem właściwości dokumentu, który ma zostać zaktualizowany.

// update one item
var filter = Builders<BsonDocument>.Filter.Eq("name", "Sand Surfboard");
var update = Builders<BsonDocument>.Update.Set("name", "Sand Surfboard Pro");

collection.UpdateOne(filter, update);

//update many items
var filterMany = Builders<BsonDocument>.Filter.Eq("category", "gear-surf-surfboards");
var updateMany = Builders<BsonDocument>.Update.Set("category", "gear-surfboards");

collection.UpdateMany(filterMany, updateMany);

Zbiorcze aktualizacje kolekcji

Za pomocą operacji bulkWrite można wykonywać jednocześnie kilka różnych typów operacji. Dowiedz się więcej na temat optymalizowania operacji zapisu zbiorczego dla usługi Azure Cosmos DB.

Dostępne są następujące operacje zbiorcze:

// perform multiple different types of operations
var models = new WriteModel<BsonDocument>[]
{
    new InsertOneModel<BsonDocument>(new BsonDocument(new BsonDocument
    {
        { "name", "Wave Paddleboard" },
        { "category", "gear-surfboards" },
        { "count", 1 }
    })),
    new UpdateOneModel<BsonDocument>(
        Builders<BsonDocument>.Filter.Eq("name", "Sand Surfboard Pro"),
        Builders<BsonDocument>.Update.Set("name", "Sand Surfboard Pro X")),
    new DeleteOneModel<BsonDocument>(new BsonDocument("name", "Ocean Surfboard"))
};

collection.BulkWrite(models);

Usuwanie dokumentu

Aby usunąć dokumenty, użyj zapytania, aby zdefiniować sposób znajdowania dokumentów.

var deleteFilter = Builders<BsonDocument>.Filter.Eq("name", "Sand Surfboard Pro X");

collection.DeleteOne(deleteFilter);

Zobacz też