ADO.NET Entity Framework: Algunos detalles (I)!

Estos días he estado probando el SP1 de Visual Studio 2008 (VS 2008) y .NET Framework 3.5 jugando con los ejemplos que vienen con el .NET Framework 3.5 Enhancements Training Kit. Lo primero que he probado es ADO.NET Entity Framework (ADO.NET EF), y entre prueba y prueba, y lectura y lectura he ido conociendo algunos detalles sobre aspectos relativos a los distintos elementos que constituyen esta tecnología. La idea de este post y los siguientes es iros contando esos pequeños detalles. Empecemos.

Detalles del EDM Designer

Como sabéis, a la hora de construir un Entity Data Model (EDM) de ADO.NET EF disponemos del EDM Designer que con el SP1 de VS 2008 ya viene integrado en el IDE. En este punto, es importante entender que perspectiva tenemos en VS 2008 de un EDM:

  • El EDM Designer nos muestra las entidades de nuestro modelo desde un punto de vista conceptual. Estamos hablando por tanto de entidades de negocio, que no tienen por qué seguir una descripción fiel de la información que tenemos en la base de datos.
  • A través de la ventana de propiedades del EDM:
    • Podemos cambiar el nombre del Entity Container que tiene que ser único.
    • Podemos establecer el modo en el que los artefactos del modelo son creados por defecto:
      • Embebidos en el ensamblado (opción que viene habilitada por defecto).
      • Copy to output directory, lo que producirá los tres ficheros XML que constituyen un EDM.
  • Además de poder ver el modelo como un diagrama, podemos ver la jerarquía del mismo mediante el Model Browser.
image image image

El Model Browser permite visualizar aspectos que no son visibles de manera directa con el Designer:

  • Una perspectiva detallada del lado conceptual del modelo a través de:
    • Los Entity Types, que representan las entidades conceptuales que se encuentran mapeadas en entidades a nivela de almacenamiento.
    • Los Entity Sets, que representan contenedores o colecciones de Entity Types.
    • Las Associations, que permiten relacionar entidades entre si.
    • Los Associations Sets, que represnetan contenedores o colecciones de Associations.

image

  • Las funciones mapeadas.
  • Y la perspectiva de almacenamiento (storage) del modelo. Esta perspectiva se puede ver a través de la sección .Store del Model Browser:

image

Una pregunta que nos puede venir a la cabeza es si el EDM es algo estático y no modificable…la respuesta clara es que no. Podemos modificar distintas partes de un EDM a través de la ventana de propiedades de VS 2008. Por ejemplo, para modificar un Entity Type:

image 

Otro aspecto muy importante es que desde el Model Browser podemos actualizar en todo momento nuestro EDM:

  • Utilizamos la opción Update Model from Database…
  • Elegimos que queremos hacer: Añadir, borrar o actualizar tablas, vistas o procedimientos almacenados.
image image image

Y hasta aquí este primer post sobre detalles de ADO.NET EF. Conforme vaya viendo más cosas, espero ir publicándolas en el blog.

Publicado por

Juan Carlos González

Juan Carlos es Ingeniero de Telecomunicaciones por la Universidad de Valladolid y Diplomado en Ciencias Empresariales por la Universidad Oberta de Catalunya (UOC). Cuenta con más de 12 años de experiencia en tecnologías y plataformas de Microsoft diversas (SQL Server, Visual Studio, .NET Framework, etc.), aunque su trabajo diario gira en torno a SharePoint & Office 365. Juan Carlos es MVP de Office Servers & Services desde 2015 (anteriormente fue reconocido por Microsoft como MVP de Office 365 y MVP de SharePoint Server desde 2008 hasta 2015), coordinador del grupo de usuarios .NET de Cantabria (Nuberos.Net, www.nuberos.es), co-fundador y coordinador del Grupo de Usuarios de SharePoint de España (SUGES, www.suges.es), así como co-director de la revista gratuita en castellano sobre SharePoint CompartiMOSS (www.compartimoss.com). Hasta la fecha, ha publicado 8 libros sobre SharePoint & Office 365 y varios artículos en castellano y en inglés sobre ambas plataformas.

Un comentario en “ADO.NET Entity Framework: Algunos detalles (I)!”

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *