Operaciones CRUD en Azure Table Storage con C#
Clase 17 de 22 • Curso de Almacenamiento en Azure
Contenido del curso
Almacenamiento
- 3

Instalación de Visual Studio Code en cualquier SO
00:43 min - 4

Tipos de Almacenamiento en la Nube con .NET Core
05:37 min - 5

Creación y configuración de cuentas de almacenamiento en la nube
05:46 min - 6

Instalación y uso del Explorador de Almacenamiento en Azure
08:05 min - 7

Protección de Cadenas de Conexión en Aplicaciones .NET Console
09:50 min - 8

Configuración de Proyectos con Paquetes Microsoft en Visual Studio
09:48 min - 9

Conexión y gestión de contenedores en Azure Blob Storage
10:06 min - 10

Subir imágenes a un contenedor en la nube con C#
06:21 min - 11

Agregar File Storage de Azure en Windows paso a paso
01:20 min - 12

Configuración de File Storage en Linux paso a paso
01:35 min - 13

Configurar File Storage en MacOS
01:32 min
Table Storage
- 14

Uso de Cosmos DB en Aplicaciones con Visual Studio Code
08:43 min - 15

Conexión y Creación de Tablas en Azure Cosmos DB con C#
09:59 min - 16

Creación de Entidades y Operaciones CRUD en Tablas Cosmos DB
09:33 min - 17

Operaciones CRUD en Azure Table Storage con C#
Viendo ahora - 18

Creación de colas en Azure Storage con Visual Studio Code
08:32 min - 19

Creación y Gestión de Colas en Aplicaciones de Almacenamiento
07:06 min - 20

Manejo de Colas y Almacenamiento en Proyectos de Software
09:47 min - 21

Automatización de Procesos con Archivos en Blog Historias
08:07 min
Cierre
¿Insertaste ya tu entidad como en el video? ¿Eres feliz de que pudiste lograr la inserción de la entidad? Bueno, pues ya llevas la mitad, vamos ahora por las siguientes operaciones. Solo verifica que tu entidad está por ahora ya visible en el portal de Azure. Para hacerlo, debes ir al portal y seleccionar tu base de datos de CosmosDB y elegir la opción de exploración de datos.
Con tu entidad lista ahora podemos comenzar a ver las siguientes dos operaciones restantes. Aprovecha la entidad que ya creaste para seguir con la siguiente operación. La de inserción fue la que ya hicimos. Podemos ver en el portal a tu nueva entidad y guardaremos para el final la operación de lectura.
Comencemos con la operación para actualizar el registro recién creado. Para hacer eso lo único que debes hacer es modificar los datos de tu contacto recién creado.
{ Contacto contacto = new Contacto("Espinoza", "Miranda") { Email = "miranda@outlook.com", Telefono = "8118748461" }; TableOperation insertOrMergeOperation = TableOperation.InsertOrMerge(contacto); TableResult result = await table.ExecuteAsync(insertOrMergeOperation); Contacto insertedCustomer = result.Result as Contacto; Console.WriteLine("Entidad modificada"); }
Nota que solo modifiqué un par de dígitos del contacto para ver que si haya un cambio. ¡Ah! Si, también modifiqué el mensaje de la consola para avisar que el registro fue modificado. Ejecuta tu aplicación y ve a tu portal de Azure, podrás ver el cambio reflejado ahí.
Bastante sencillo ¿no es así? El mismo método te permite insertar o actualizar y eso es fenomenal en términos de reutilización de código, sin embargo, debes notar también que si no cuidas tu código y no generas una nueva entidad lo que sucederá es que puedes reemplazar accidentalmente un registro en lugar de crear uno nuevo así que ten mucho cuidado. Vamos ahora con la operación de lectura, es decir, la operación que debe mostrar en mi aplicación el registro que tengo en la base de datos. No hay mucha ciencia aquí, solo usas un objeto de tipo TableOperation, y con este objeto podemos buscar a nuestro elemento. Estaría muy bien que jugaras con esta línea para no solo obtener un registro sino todos en una lista. ¿Qué tendrías que hacer aquí? En fin, el resultado de la operación se va a un objeto TableResult que es de donde puedes obtener el resultado para mostrar en la terminal.
{ TableOperation retrieveOperation = TableOperation.Retrieve<Contacto>("Espinoza", "Miranda"); TableResult result = await table.ExecuteAsync(retrieveOperation); Contacto customer = result.Result as Contacto; if (customer != null) { Console.WriteLine("{0}\t{1}\t{2}\t{3}", customer.PartitionKey, customer.RowKey, customer.Email, customer.Telefono); } }
Al ejecutar tu aplicación, el resultado en tu terminal debe ser parecido a esto.
Ya tenemos tres de las cuatro operaciones básicas. Vamos con la final y la más triste de todas. La operación de eliminar. Aquí esencialmente se repite lo mismo.
{ Contacto contacto = new Contacto("Espinoza", "Miranda") { Email = "miranda@outlook.com", Telefono = "8118748461", ETag = "*" }; TableOperation deleteOperation = TableOperation.Delete(contacto); TableResult result = await table.ExecuteAsync(deleteOperation); Console.WriteLine("Resultado de la operación: " + result.RequestCharge); }
La gran diferencia es que entre las propiedades de tu nueva entidad debes agregar una propiedad adicional llamada ETag, nunca he sabido la razón exacta alguien una vez me dijo que se trataba de una medida de seguridad para evitar borrar accidentalmente, alguien también me dijo que se trataba de algo legado de las primeras versiones de almacenamiento. De una u otra manera solo agrega esta propiedad y después de eso regresa a tu portal. Verás que tu carpeta está vacía.
De esta manera es que podrás ejecutar cualquiera de todas tus operaciones básicas de edición en Table Storage ¡Diviértete comenzando a hacer procesos más complejos!