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 |
|
Todos los tipos de cadenas |
|
MemoryStream, byte[] |
|
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