Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
I contenitori in Azure Cosmos DB archiviano set di elementi. Prima di poter creare, eseguire query o gestire elementi, è necessario creare un contenitore.
Assegnare un nome a un contenitore
In Azure Cosmos DB un contenitore è analogo a una tabella in un database relazionale. Quando si crea un contenitore, il nome del contenitore costituisce un segmento dell'URI usato per accedere alla risorsa contenitore e agli elementi figlio.
Ecco alcune regole rapide per la denominazione di un contenitore:
- I nomi dei contenitori non devono essere vuoti.
- I nomi dei contenitori non possono superare i 256 caratteri.
Dopo la creazione, l'URI per un contenitore è in questo formato:
https://<cosmos-account-name>.documents.azure.com/dbs/<database-name>/colls/<container-name>
Suggerimento
Per altre informazioni sui limiti dei nomi dei contenitori, vedere Quote e limiti del servizio
Creare un contenitore
Per creare un contenitore, chiamare uno dei metodi seguenti:
Creare un contenitore in modo asincrono
L'esempio seguente crea un contenitore in modo asincrono:
// New instance of Container class referencing the server-side container
Container container1 = await database.CreateContainerAsync(
id: "products-1",
partitionKeyPath: "/category",
throughput: 400
);
Il Database.CreateContainerAsync metodo genera un'eccezione se esiste già un database con lo stesso nome.
Creare un contenitore in modo asincrono se non esiste già
L'esempio seguente crea un contenitore in modo asincrono solo se non esiste già nell'account:
// New instance of Container class referencing the server-side container
Container container2 = await database.CreateContainerIfNotExistsAsync(
id: "products-2",
partitionKeyPath: "/category",
throughput: 400
);
Il Database.CreateContainerIfNotExistsAsync metodo crea un nuovo contenitore solo se non esiste già. Questo metodo è utile per evitare errori se si esegue lo stesso codice più volte.
Analisi della risposta
In tutti gli esempi finora, la risposta alla richiesta asincrona è stata convertita immediatamente al tipo Container. È possibile analizzare i metadati relativi alla risposta, incluse le intestazioni e il codice di stato HTTP. Il vero tipo restituito per i metodi Database.CreateContainerAsync e Database.CreateContainerIfNotExistsAsync è ContainerResponse.
Nell'esempio seguente viene illustrato il metodo Database.CreateContainerIfNotExistsAsync che restituisce un oggetto ContainerResponse. Una volta restituito, è possibile analizzare le proprietà della risposta e quindi ottenere l'oggetto Container sottostante:
// 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;
Passaggi successivi
Dopo aver creato un contenitore, usare la guida successiva per creare elementi.