Mostrando entradas con la etiqueta Sql Azure. Mostrar todas las entradas
Mostrando entradas con la etiqueta Sql Azure. Mostrar todas las entradas

lunes, 29 de febrero de 2016

Creando un BackEnd con EntityFramework Core y Asp.Net Web Api


Como todos sabemos desde el año anterior Microsoft anunció una nueva versión del .Net Framework, llamado .Net Core, una versión del framework mucho más liviana y modular, diseñada para ser multiplataforma. Uno de los productos desarrollados a la par fue EntityFramework Core, una nueva versión del ORM de Microsoft mucho más liviana la cual incluye muchas de las características implementadas en EntityFramework 6.x la última versión estable de este ORM, ya que EF Core aún se encuentra en Pre-Release.


EntityFramework Core, es una versión mucho más liviana y optimizada para la nube, en trabajo conjunto con Asp.Net Core, además de esto está pensado para realizar mapeos con múltiples motores de base de datos relaciones, así mismo como bases de datos no relacionales, como DocumentDB por ejemplo, si bien aún no tenemos esta característica en la versión actual de EF Core, se espera que sea incluida en futuras versiones.

En la versión Pre-Release de EF Core encontramos características como el uso del enfoque CodeFirst, relaciones a través de propiedades de navegación, creación del modelo usando convenciones, Shadow properties, que es una nueva característica bien interesante y la cual veremos más adelante en este blog, Changes Traking, concurrencia optimista, transacciones relaciones, entre otras características con las cuales estamos familiarizados y esperamos de cualquier ORM que usemos.

Entre futuras características a implementar en EF Core tenemos el uso de los famosos DataAnnotations, Queries sobre las propiedades de navegación, estabilización de soporte para multiplataforma, auditoria de operaciones, conexión y mapeo para DocumentDB, entre otras características.

Ahora que conocemos un poco EntityFramework Core, vamos a observar un HOL o tutorial en el cual desarrollaremos un BackEnd que use EntityFramework Core como ORM además de las siguientes tecnologías:
  • Microsoft Azure Sql Db: Como base de datos relacional en la nube, para almacenar los datos
  • EntityFramework Core: Como ORM para persistencia y acceso a datos
  • Asp.Net Web Api: Como marco de trabajo para la creación de servicios Http
  • Telerik Fiddler: Como cliente para probar nuestros servicios
Ahora sí, manos a la obra, ingresa al siguiente link, en el cual encontrarás el paso a paso de como implentar el BackEnd.

Y puedes descargar los fuentes de la siguiente ruta: Fuentes


Espero este artículo sea de utilidad y No olvides visitar mi página en Facebook para mantenerte actualizado de lo que pasa en el Tavo.Net https://www.facebook.com/eltavo.net


Saludos, y buena suerte!

miércoles, 26 de noviembre de 2014

[EntityFramework] Usando EntityFramewok y sql Azure

Hola amigos, tuve el gusto de ser invitado a participar con un par de vídeos para la campaña #100DevDays de Microsoft Visual Estudio, realizada en el Channel9 Latam, en esta ocasión expliqué como usar EntityFramework y Sql Azure, aquí les dejo el vídeo y también puedes observar el paso a paso en este artículo: EntityFramework y Sql Azure

domingo, 13 de abril de 2014

Utilizando Sql Azure y Entity Framework

Hola amigos, en esta ocasión vamos ver cómo usar Entity Framework con una base de datos en la nube, más específicamente Sql Azure, vamos a ver cómo interactúan estas dos tecnologías, para esto vamos a crear nuestra base de datos Sql Azure, y luego vamos a crear nuestro modelo en Entity Framework usando el enfoque Data Base First y por último vamos a crear un sitio web con Asp.Net MVC para ver cómo funciona.

Antes de iniciar me parece oportuno hablar un poco acerca de Sql Azure:

Sql Azure: Base de datos relacional hospedada en la nube, basada en sql server, permite alta escalabilidad y automatización, garantiza alta disponibilidad, mantenimiento y actualización garantizado y ejecutado por Microsoft.

Ahora iniciemos creando nuestra base de datos en Sql Azure, para esto ingresamos a nuestro administrador de Microsoft Azure y elegimos la opción "Base de datos Sql":


Posteriormente hacemos clic en la opción "Nuevo" señalada en la imagen anterior, con la cual se nos mostrará la siguiente pantalla:


Allí elegimos la opción de creación rápida, en la cual solo debemos especificar el nombre de la base de datos y el servidor en el cual se creará o si deseamos podemos crear un nuevo servidor, para nuestro ejemplo llamaremos la base de datos "DemoEfSqlAzure" y elegiremos la opción de crear nuevo servidor, para lo cual debemos seleccionar una región de ubicación del servidor, un nombre de inicio de sesión y una contraseña y para terminar la creación hacemos clic en el botón "Crear base de datos Sql".

Ahora que tenemos nuestra base de datos creada la vamos a seleccionar y elegir la opción "Administrar", de inmediato se nos muestra en siguiente mensaje:


Es importante elegir la opción "Si" para que se agregue la excepción en el Firewall de este modo podamos acceder a nuestra base de datos de manera remota. Posteriormente se abre la consola de administración de la base de datos en la cual podemos agregar, modificar, eliminar tablas, modificar su estructura y demás operaciones en la base de datos.

Posteriormente vamos a crear una nueva tabla en nuestra BD llamada estudiantes:


Ahora que tenemos nuestra base de datos el siguiente paso es crear nuestro modelo en Entity Framework basado en ella, y para esto vamos a abrir nuestro excelente IDE Visual Studio y vamos a crear un nuevo proyecto de tipo librería:


y una vez creado el proyecto hacemos clic derecho sobre él y elegimos la opción agregar nuevo ítem, filtramos por ítems tipo datos y elegimos Ado.Net Entity Data Model y elegimos la opción agregar, y ahora se inicia el asistente para la creación de nuestro modelo conceptual, en el cual elegiremos el enfoque "Ef designer from DataBase" del cual hemos hablado en artículos anteriores.


Ahora debemos suministrar los datos de conexión a nuestra base de datos en la nube, más específicamente los siguientes:


El nombre del servidor lo podemos tomar de nuestro sitio de administración de Sql Azure, seleccionando nuestra base de datos y observando la sección de conexión a la base de datos, tal y cómo se muestra en la siguiente imagen:


Posteriormente probamos que nuestra conexión esté funcionando correctamente, seleccionamos la versión de Entity Framework con la que vamos a trabajar, en nuestro caso la 6.0, y por ultimo seleccionamos los objetos de la base de datos que queremos mapear:


Perfecto, ahora tenemos listo nuestro modelo conceptual en Entity Framework mapeado a nuestra base de datos en la nube, ahora para terminar nuestro ejemplo vamos a crear en la misma solución de Visual Studio un nuevo proyecto web Asp.Net MVC desde el cual vamos a consumir nuestro modelo conceptual de EF para probar su funcionalidad.

En primera instancia en nuestro proyecto de MVC vamos a referenciar nuestra librería creada anteriormente para lograr ver nuestro contexto, luego compilamos la solución y además vamos a copiar en el web.config la cadena de conexión que tenemos en el app.config de dicha librería, esto para lograr conectarnos a la base de datos desde nuestra aplicación web.

Y para terminar vamos a hacer clic derecho sobre la carpeta Controllers de nuestra aplicación web y vamos a elegir la opción "agregar controlador", y vamos a elegir la plantilla "MVC 5 Controller with views, using Entity Framework" lo que nos generará todas nuestras vistas y nuestro controller con las acciones Crud básicas las cuales usan el contexto para acceder a nuestra base de datos en la nube:



Si esperamos unos segundos veremos que Visual Studio nos genera nuestras vistas y nuestro controlador, en el cual sus acciones básicas usan el contexto de Entity Framework para interactuar con la base de datos. Nuestra acción para obtener todos los estudiantes por ejemplo:


Y si ejecutamos nuestra aplicación por fin veremos que interactuamos correctamente con nuestra base de datos Sql Azure a través de Entity Framework  y que podemos hacer operaciones básicas con nuestra tabla estudiantes a través de nuestra aplicación Asp.Net MVC.


Bueno amigos eso es todo de este ejemplo de cómo conectarnos a una base de datos Sql Azure desde Entity Framework, espero les sea de utilidad y de interés.

También puedes ver este vídeo donde explico paso a paso como hacerlo también, solo que esta vez usando el enfoque CodeFirst: Vídeo, usando EntityFramework y Sql Azure.

Saludos, y buena suerte!

domingo, 30 de marzo de 2014