Azure Cosmos DB – CRUD ejemplo práctico

Azure Cosmos Db es una base de datos no relacional utilizada cuando tenemos múltiples objetos que pueden tener propiedades dinámicas, es decir, que pueden tener todas o algunas de las propiedades. Los objetos que guardamos no contienen una estructura definida pero si un mismo tipo y además se guardan en formato JSON: https://www.flickr.com/photos/191116844@N08/51130582920/in/dateposted-public/ Ejemplo de objeto almacenado en Cosmos Db en formato JSON Ejemplo Práctico A lo largo de este post expondré un ejercicio práctico para poder visualizar el funcionamiento de Azure Cosmos Db. Para ello utilizaremos Visual Studio Enterprise (código) y el…continue reading →

Creación de CRUD. Explicación Modelo, Controlador y Repositorio

En la siguiente entrada veremos como crear una plantilla CRUD (Create, Replace, Update & Delete), así como la creación y ejemplo de una base de datos sobre la que haremos pruebas, los modales, repositorios y controladores necesarios para la correcta implementación. https://flic.kr/p/2kExAQX Para empezar, crearemos una tabla en la base de datos a la que llamaremos Vuelos. Utilizaremos esta tabla, la cual cuenta con Id, Flynumber, Airlane, Cityfrom, Cityto, Gate y Hour. Nos servirá como entorno de pruebas para las funciones que crearemos más adelante. https://flic.kr/p/2kEu5mP A continuación, en el entorno "Visual Studio…continue reading →

Envio de emails de forma automatizada con SendGrid en Azure

Que es SendGrid: SendGrid es un servicio de correo electrónico basado en la nube que ofrece un sistema confiable de entrega de correo electrónico transaccional, escalabilidad y análisis en tiempo real junto, con API flexibles que facilitan la integración personalizada. A continuación se indican casos de uso comunes de SendGrid: •             Envío automático de recepciones o compra de confirmaciones a clientes. •             Administración de las listas de distribución para el envío mensual de folletos y promociones a clientes. •             Recopilación de métricas en tiempo real para, por ejemplo, direcciones de correo electrónico bloqueadas…continue reading →

CACHÉ REDIS

Caché Redis es un tipo de almacenamiento, como session, pero en Azure, es decir, este tipo de caché permanece disponible entre las diferentes aplicaciones que lo implementen y si, por ejemplo, tuviésemos un carrito de la compra en el navegador de un ordenador, podríamos seguir teniendo ese carrito disponible si abrimos la aplicación en el movil. Para crear un almacenamiento Redis debemos seguir los siguientes pasos:1. Abrimos el portal de Azure.2. Crear nuevo recurso.3. Buscamos Bases de datos y seleccionamos Redis Cache. 4. Seleccionamos tipo de suscripción, grupo de recursos, el nombre de…continue reading →

Cómo hacer un carrito en ASP.NET Core

A la hora de hacer una página web de una tienda online, uno de los elementos más importantes es el carrito de la compra. A continuación, os voy a explicar de una manera sencilla, como implementarlo en nuestro proyecto ASP.NET Core. Requisitos Deberemos instalar el NuGet de Session. En Session solo podemos guardar string e integer. Al ser un carrito, querremos almacenar un array de elementos, y para ello deberemos extender la clase Session. Para poder serializar un array usaremos el NuGet Newtonsoft.json. https://www.flickr.com/photos/192274185@N08/50962074542/in/dateposted-public/ https://www.flickr.com/photos/192274185@N08/50961264983/in/dateposted-public/ Configuración Primero debemos configurar Session para que funcione…continue reading →

Leer GeoJson con .Net Core

A continuación explicaré cómo se puede acceder a un archivo en el servidor (wwwroot) y leerlo. En este caso voy a centrarme en leer archivos de tipo .geojson. Ejemplo de documento .GeoJson : {"type": "FeatureCollection","features": [{"type": "Feature","geometry": {"type": "Point","coordinates": [ -2.780104,37.14114 ]},"properties": {"province":"Almería","population":"Abla", }] Para poder representar el documento y acceder a las claves, tenemos que crear las clases que lo representan. Las clases quedarían así: public class Geometry { public string type { get; set; } public List coordinates { get; set; } } public class Properties { public string province {…continue reading →