Cómo separar las clases de Entity Framework en un proyecto separado?

En este post vamos a seguir viendo algunas de las funcionalidades que tenemos disponibles en Entity Framework, en este caso cómo separar las clases que generadas por EF en un proyecto separado.

Generalmente cuando trabajamos con una arquitectura en capas tenemos un proyecto para nuestro acceso a datos separado de lo que es la parte de interfaz de usuario. A su vez por cuestiones de ordenamiento o por necesidad de compartir estas clases con otros proyectos (o directamente exportarlos en una assembly separada para compartirla con otra solución diferente) puede que necesitemos que las clases generadas por EF estén separadas de lo que es en sí el proyecto de acceso a datos.

Para empezar con este ejemplo vamos a plantear nuestro caso inicial. Tenemos nuestra aplicación ASP.NET MVC con dos proyectos, uno de la App web en sí y otro para el acceso a datos con Entity Framework Database First:

MoverClasesEF - ConfiguracionInicial

Lo que vamos a hacer a continuación es agregar un nuevo proyecto para nuestras clases compartidas, en este caso DemoEF.Entities. Luego de crearlo habrá que agregar al proyecto de datos la referencia al mismo.

Leer más »

¿Cómo crear una aplicación en AppHarbor? – Agregar una base de datos

Siguiendo con el post anterior donde vimos cómo crear una aplicación en AppHarbor, vamos a seguir sobre la misma temática pero enfocándonos en un punto en particular: agregar interacción con una base de datos. Generalmente cuando desarrollamos una aplicación ASP.NET MVC tenemos alguna interacción con bases de datos, independientemente del uso que necesitemos darle.

AppHarbor maneja el concepto de Add-Ons. Los mismos son agregados que podemos incluir en nuestra aplicación, algunos gratuitos y otros de pago. Las bases de datos son uno de los tipos de Add-Ons disponibles, siendo otras opciones dedicadas al monitoreo del sitio (por ejemplo New Relic), gestión de archivos multimedia, envíos de emails, entre otros.

Para gestionar los mismos vamos al portal de administración de nuestra aplicación y seleccionamos la opción “add-on catalog” ubicada en la parte inferior:

AppHarbor - InstalarAddOn
Agregar Add-On

Leer más »

Entity Framework: Database First

En el post anterior hablamos de las formas disponibles que tenemos de implementar Entity Framework en nuestra aplicación. Hoy vamos a ver la primera (y tal vez más sencilla) forma de implementarlo: Database First.

Database First es el método que nos permite primero crear la base de datos con sus tablas (y otras estructuras) y luego incorporarlas a la aplicación. Esto es necesario cuando la aplicación que realizamos necesita utilizar una base de datos existente. Otro uso que podemos darle es cuando necesitamos crear la base de datos, pero nos es más cómodo realizar la definición de las estructuras de la base de datos directamente con sentencias SQL, y luego importar los resultados en la aplicación (lo cual en muchos casos es muy útil y necesario, ya que nos permite definir las estructuras SQL tal cual las queremos o las necesitamos).

Leer más »

Formas de implementar Entity Framework en nuestra aplicación ASP.NET MVC

A la hora de realizar la conexión de nuestra aplicación ASP.NET MVC con su/sus base de datos, Entity Framework es una buena alternativa.

Una de las muy buenas funcionalidades que nos provee son las formas en las cuales podemos establecer la relación entre la base de datos y las entidades de nuestra aplicación, dependiendo de la forma de trabajo del equipo, y de si existe o no la base de datos:

Leer más »