Documentando APIS con Swagger

A medida que nuestra api crece también crece la necesidad de documentarla, pues en el mundo del desarrollo, el trabajo en equipo es nuestro pan de cada día y no desarrollamos para nosotros mismos. Pero, ¿Por qué es importante documentar una API? Facilita el desarrollo para otros desarrolladores.Incrementa la productividad.Simplifica la búsqueda.Mejora el mantenimiento del código. Dentro de todas las herramientas disponibles para la documentación de una API, hoy vamos a hablar de Swagger. Una plataforma colaborativa donde poder documentar y compartir la documentación de nuestras APIs. ¿Por qué Swagger? Dentro de todas…continue reading →

Crear Paquetes Nuget

Nuget es una herramienta esencial para cualquier plataforma de desarrollo moderno, ya que es un mecanismo a través del cual los desarrolladores pueden crear, compartir y consumir código útil. A menudo, este código se integra en "paquetes" que contienen código compilado (como archivos DLL) y otro contenido necesario en los proyectos que utilizan estos paquetes. En .NET (incluido .NET Core), el mecanismo compatible con Microsoft para compartir código es NuGet, que define cómo se crean, hospedan y consumen paquetes en .NET, y ofrece las herramientas para cada uno de esos roles. Paquete Nuget Desde…continue reading →

Consultas de Acción XML

Las consultas de acción LINQ to XML se trata de una interfaz de programación XML en memoria y habilitada para LINQ que permite trabajar con XML desde los lenguajes de programación de .NET Framework. Alguna de las ventajas de LINQ to XML es la capacidad de usar los resultados de la consulta como parámetros en constructores de objetos XElement y XAttribute, que habilita un método eficaz para crear XML. Y permite que se pueda leer fácilmente XML de distintas formas. Vamos a realizar una aplicación con el objetivo de extraer los datos de…continue reading →

Consumo de Web API desde entorno cliente

En este post vamos a tratar de explicar de forma práctica el consumo de forma asíncrona en entorno cliente de una web API pública. Para ello vamos a hacer uso de la tecnología AJAX. También vamos a crear de forma dinámica elementos de HTML basándonos en JavaScript. De esa forma vamos a conseguir mostrar al usuario datos de forma dinámica de una forma vistosa. Al trabajar de forma asíncrona consumiendo una API conseguimos por un lado liberar a nuestro servidor de carga, ya que es el usuario y la API los que reciben…continue reading →

Métodos de Acción Web-Api

Bienvenidos a todos a este post en el que explicare de forma sencilla y cómo crear una Web API con métodos de acción CRUD (Create, Read, Update, Delete), y a consumirla desde el lado Cliente, en este caso una aplicación de testing para probar que el funcionamiento de la api (exactamente utilizare POSTMAN para ello), todo el proyecto lo dejare en un repositorio de github junto con un script para la creación de la base de datos,dichos enlaces estarán referenciados al final del post. Información relevante. Primero de todo hay que saber que…continue reading →

Habilitar CORS en WEB API

¡Hola a todos! Bienvenidos a este Post donde aprenderemos qué es el CORS, cómo funciona y cómo solucionar un problema bastante común con peticiones AJAX con una WebApi. Empecemos. ¿Qué es CORS? CORS (Cross Origin Resource Sharing, o bien en español Intercambio de Recursos de Origen Cruzado) es un mecanismo en el que permite solicitar recursos restringidos desde una página web de un dominio a otro recurso web de otro dominio. De esta manera, CORS define una manera en la que el navegador y el servidor puedan interactuar para determinar si la petición…continue reading →

Paginación con Linq en Visual Studio

            En este post se explica de forma detallada los pasos a seguir para poder realizar una paginación en con Visual Studio en nuestro proyecto. Para empezar, una explicación sencilla de lo que es la “Paginación”, sería: recogida y muestra de una serie de información de nuestra base de datos, mostrar la información de esta manera facilita la navegación y hace que el cliente no reciba toda la información de golpe.             Estos son los pasos, o elementos que debe de tener nuestro proyecto para poder realizar esta tarea: Una base de datos,…continue reading →

Prevención de ataques CSRF en ASP.NET Framework 4.6.1

En este post trataremos un problema que sufren muchos sitios web, los ataques CSRF (Cross Site Request Forgery). Las páginas web sufren este tipo de ataques debido a dos factores: No comprobar que los formularios de los que la aplicación recibe la información son los suyos propios.La ingeniería social. ¿Pero qué quiere decir esto?, paso a explicarlo: ¿De que va todo esto? Un ataque CSRF se basa en el uso de las sesiones de usuario para actuar. Cuando un usuario inicia sesión en la aplicación atacada, normalmente la sesión perdura durante todo el…continue reading →

Web Socket SignalR en ASP.NET MVC

ÍNDICE1. INTRODUCCIÓN2. CASO PRÁCTICO2.1. Creación del proyecto 2.2. Instalación del paquete SignalR 2.3. Creación y modificación de archivos2.4. Ejecución de la aplicación 3. CONCLUSIÓN 1. INTRODUCCIÓN En este post se va a mostrar cómo usar la biblioteca SignalR en una aplicación web ASP.NET MVC para simplificar la creación de una funcionalidad en tiempo real de la misma abstrayéndonos de usar WebSocket directamente. Para entender el problema es importante entender qué hace SignalR y en qué tipo de aplicaciones se usa. Esta biblioteca simplifica el proceso de crear aplicaciones web con funcionalidad en tiempo…continue reading →

Los Test Unitarios para un controlador en ASP.NET MVC

¿Que son los Test Unitarios y que necesitamos para llevarlos acabo en nuestros controladores? Los Test Unitarios ( o Unit Test), son pruebas sencillas para aislar y comprobar diferentes partes de código. En este caso, los métodos dentro de los controladores, pudiendo encontrar los errores sencillamente, si los hubiera. En este ejemplo, vamos a realizar tres pruebas, la ultima de ellas teniendo dos apartados. Las pruebas son las siguientes: Verificar que el modelo que devuelto no es null.Comprobar el contenido del ViewBag.Comprobar las redirecciones son correctas. Puesta a punto. Antes de empezar, esta…continue reading →