Een container maken in Azure Cosmos DB for NoSQL met behulp van .NET
VAN TOEPASSING OP: NoSQL
Containers in Azure Cosmos DB-archiefsets met items. Voordat u items kunt maken, opvragen of beheren, moet u eerst een container maken.
Een container een naam opgeven
In Azure Cosmos DB is een container vergelijkbaar met een tabel in een relationele database. Wanneer u een container maakt, vormt de containernaam een segment van de URI die wordt gebruikt voor toegang tot de containerresource en eventuele onderliggende items.
Hier volgen enkele snelle regels bij het benoemen van een container:
- Containernamen mogen niet leeg zijn.
- Containernamen mogen niet langer zijn dan 256 tekens.
Zodra de URI voor een container is gemaakt, heeft deze indeling:
https://<cosmos-account-name>.documents.azure.com/dbs/<database-name>/colls/<container-name>
Een container maken
Als u een container wilt maken, roept u een van de volgende methoden aan:
Een container asynchroon maken
In het volgende voorbeeld wordt asynchroon een container gemaakt:
// New instance of Container class referencing the server-side container
Container container1 = await database.CreateContainerAsync(
id: "products-1",
partitionKeyPath: "/category",
throughput: 400
);
De Database.CreateContainerAsync
methode genereert een uitzondering als er al een database met dezelfde naam bestaat.
Een container asynchroon maken als deze nog niet bestaat
In het volgende voorbeeld wordt een container asynchroon gemaakt als deze nog niet bestaat in het account:
// New instance of Container class referencing the server-side container
Container container2 = await database.CreateContainerIfNotExistsAsync(
id: "products-2",
partitionKeyPath: "/category",
throughput: 400
);
Met de Database.CreateContainerIfNotExistsAsync
methode wordt alleen een nieuwe container gemaakt als deze nog niet bestaat. Deze methode is handig om fouten te voorkomen als u dezelfde code meerdere keren uitvoert.
Het antwoord parseren
In alle voorbeelden tot nu toe werd het antwoord van de asynchrone aanvraag onmiddellijk naar het Container
type verzonden. Mogelijk wilt u metagegevens over het antwoord parseren, inclusief headers en de HTTP-statuscode. Het werkelijke retourtype voor de methoden Database.CreateContainerAsync en Database.CreateContainerIfNotExistsAsync is ContainerResponse
.
In het volgende voorbeeld ziet u de methode Database.CreateContainerIfNotExistsAsync die een ContainerResponse retourneert. Zodra het resultaat is geretourneerd, kunt u antwoordeigenschappen parseren en uiteindelijk het onderliggende containerobject ophalen:
// New instance of Container class referencing the server-side container
ContainerResponse response = await database.CreateContainerIfNotExistsAsync(
id: "products-3",
partitionKeyPath: "/category",
throughput: 400
);
// Parse additional response properties
Container container3 = response.Container;
Volgende stappen
Nu u een container hebt gemaakt, gebruikt u de volgende handleiding om items te maken.