Uso del modelo de documento de .NET en DynamoDB - Amazon DynamoDB

Uso del modelo de documento de .NET en DynamoDB

El AWS SDK for .NET proporciona clases de modelo de documento que encapsulan algunas de las operaciones de bajo nivel de Amazon DynamoDB y así le ayudan a simplificar la codificación. En el modelo de documento, las clases principales son Table y Document. La clase Table proporciona métodos de operaciones de datos, como PutItem, GetItem y DeleteItem. Además, proporciona los métodos Query y Scan. La clase Document representa un solo elemento de una tabla.

Las clases del modelo de documento citadas están disponibles en el espacio de nombres Amazon.DynamoDBv2.DocumentModel.

nota

Las clases del modelo de documento no se pueden usar para crear, actualizar ni eliminar tablas. Sin embargo, el modelo de documento admite la mayoría de las operaciones de datos habituales.

Tipos de datos compatibles

El modelo de documento admite un conjunto de tipos de datos de .NET primitivos y tipos de datos de colecciones. El modelo admite los siguientes tipos de datos primitivos.

  • bool

  • byte

  • char

  • DateTime

  • decimal

  • double

  • float

  • Guid

  • Int16

  • Int32

  • Int64

  • SByte

  • string

  • UInt16

  • UInt32

  • UInt64

En la tabla siguiente se resume el mapeo de los tipos de .NET anteriores a los tipos de DynamoDB.

Tipo de .NET primitivo Tipo DynamoDB

Todos los tipos de números

N (tipo Number)

Todos los tipos de cadenas

S (tipo String)

MemoryStream, byte[]

B (tipo Binary)

bool N (tipo Number), 0 representa false (falso) y 1 representa true (verdadero).
DateTime S (tipo String). Los valores DateTime se almacenan como cadenas con formato ISO-8601.
Guid S (tipo String).
Tipos de recopilación (List, HashSet y array) BS (tipo Binary Set), SS (tipo String Set) y NS (tipo Number Set)

AWS SDK for .NET define tipos para establecer una correspondencia entre tipos booleanos, nulos, listas y mapas de DynamoDB y la API de modelo de documento de .NET:

  • Utilice DynamoDBBool para tipo booleano.

  • Utilice DynamoDBNull para tipo nulo.

  • Utilice DynamoDBList para tipo lista.

  • Utilice Document para tipo mapa.

nota
  • Se admiten valores binarios vacíos.

  • Se admite la lectura de valores de cadena vacíos. Los valores de atributo de cadena vacíos se admiten dentro de los valores de atributo del tipo de conjunto de cadenas mientras se escribe en DynamoDB. Los valores de atributo de cadena vacíos del tipo de cadena y los valores de cadena vacíos contenidos en el tipo lista o mapa se eliminan de las solicitudes de escritura