Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Contenedores de azure Cosmos DB almacenan conjuntos de elementos. Para poder crear, consultar o administrar elementos, primero debe crear un contenedor.
Asignar un nombre a un contenedor
En Azure Cosmos DB, un contenedor es análogo a una tabla de una base de datos relacional. Al crear un contenedor, el nombre del contenedor forma un segmento del URI que se usa para acceder al recurso de contenedor y a los elementos secundarios.
Estas son algunas reglas rápidas al asignar un nombre a un contenedor:
- Los nombres de contenedor no deben estar vacíos.
- Los nombres de contenedor no pueden tener más de 256 caracteres.
Una vez creado, el URI de un contenedor tiene este formato:
https://<cosmos-account-name>.documents.azure.com/dbs/<database-name>/colls/<container-name>
Sugerencia
Para más información sobre los límites de nombres de contenedor, consulte Límites y cuotas de servicio.
Creación de un contenedor
Para crear un contenedor, llame a uno de los métodos siguientes:
Creación de un contenedor de forma asincrónica
En el ejemplo siguiente se crea un contenedor de forma asincrónica:
// New instance of Container class referencing the server-side container
Container container1 = await database.CreateContainerAsync(
id: "products-1",
partitionKeyPath: "/category",
throughput: 400
);
El Database.CreateContainerAsync método produce una excepción si ya existe una base de datos con el mismo nombre.
Crear un contenedor de forma asincrónica si aún no existe
En el ejemplo siguiente se crea un contenedor de forma asincrónica solo si aún no existe en la cuenta:
// New instance of Container class referencing the server-side container
Container container2 = await database.CreateContainerIfNotExistsAsync(
id: "products-2",
partitionKeyPath: "/category",
throughput: 400
);
El Database.CreateContainerIfNotExistsAsync método solo crea un contenedor si aún no existe. Este método es útil para evitar errores si ejecuta el mismo código varias veces.
Análisis de la respuesta
En todos los ejemplos hasta ahora, la respuesta de la solicitud asincrónica se convierte inmediatamente al tipo Container. Es posible que quiera analizar los metadatos sobre la respuesta, incluidos los encabezados y el código de estado HTTP. El tipo de valor devuelto true para los métodos Database.CreateContainerAsync y Database.CreateContainerIfNotExistsAsync es ContainerResponse.
En el ejemplo siguiente se muestra el método Database.CreateContainerIfNotExistsAsync que devuelve un containerResponse. Una vez devuelto, puede analizar las propiedades de respuesta y, finalmente, obtener el objeto Container subyacente:
// 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;
Pasos siguientes
Ahora que ha creado un contenedor, use la siguiente guía para crear elementos.