Entity framework

2,688 views

Published on

0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,688
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
80
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Entity framework

  1. 1. UNIVERSIDAD LAICA ELOY ALFARO DE MANABÍPROPUESTA TEMÁTICA:ENTITY FRAMEWORKINTEGRANTE: ZAMBRANO ZAMBRANO ROBIN CALIXTO.CURSO:QUINTO NIVEL “A”CATEDRÁTICO:ING. JORGE PINCAY2013-2014ÍNDICE DEL CONTENIDO INTRODUCCIÓN.
  2. 2.  TEMA. BREVE RESUMEN. OBJETIVOS. OBJETIVO GENERAL. OBJETIVO ESPECÍFICOS. JUSTIFICACIÓN. MARCO TEÓRICO. METODOLOGÍA. EL TIPO DE INVESTIGACIÓN QUE SE APLICARÁ. CONCLUSIONES. BIBLIOGRAFÍA.INTRODUCCIÓNEn la actualidad existen distintos tipo de Framework para el desarrollo deaplicaciones cada uno de estos tiene distintas características funcionalidades
  3. 3. únicas que los distinguen de los otros, por lo cual a la hora de elegir un Frameworkdebemos tener en cuenta que vamos a utilizar y para que lo vamos a usar.Todo esto lleva un trabajo o una tarea que abecés se torna complicada si noconocemos el funcionamiento y los requerimientos de la aplicación.Este trabajo vamos hablar sobre Entity Framework una herramienta de Microsoft lacual permite crear aplicaciones de acceso a datos con un modelo conceptual ytambién describiremos su funcionamiento a través del desarrollo de unaaplicación.TEMA:Entity framework y desarrollo de un prototipo de aplicación utilizando EntityFrameworky el patrónMVC (Modelo Vista Controlador)con Membership.BREVE RESUMENCon la propuesta del proyecto presente, lo que se desea realizar es una aplicaciónque permitaloguearse por medio de un usuario y contraseña ya establecido en unabase de datos o permita crear un nuevo usuario. Al accederse podrá realizar lasoperaciones básicas (Mostrar, Eliminar, Actualizar e Ingresar) nuevos registros ala base de datos.OBJETIVOS
  4. 4. OBJETIVO GENERAL.Explicar la funcionalidad de la Herramienta Entity Framework para el desarrollo deaplicaciones.OBJETIVOS ESPECÍFICOS.Especificar las características de la Herramienta Entity Framework.Desarrollar una aplicación que utilice la herramienta Entity Framework.Analizar ventajas y desventajas que puede ocasionar al utilizar laherramienta Entity Framework.JUSTIFICACIÓNLa finalidad de este proyecto es conocer las características, funcionalidades deuna de las herramientas de Microsoft para el desarrollo de aplicaciones la cual esEntity Framework.Con este trabajo buscamos aprender a utilizar esta herramienta y ponerla enpráctica a la hora de desarrollar una aplicación con ciertas especificaciones segúnla necesidad del usuario y del contexto de implementación.MARCO TEÓRICOENTITY FRAMEWORK
  5. 5. Entity Framework es un conjunto de tecnologías de ADO.NET que permiten eldesarrollo de aplicaciones de software orientadas a datos.Los arquitectos y programadores de aplicaciones orientadas a datos se hanenfrentado a la necesidad de lograr dos objetivos muy diferentes. Deben modelarlas entidades, las relaciones y la lógica de los problemas empresariales queresuelven, y también deben trabajar con los motores de datos que se usan paraalmacenar y recuperar los datos.Los datos pueden abarcar varios sistemas de almacenamiento, cada uno con suspropios protocolos; incluso las aplicaciones que funcionan con un único sistema dealmacenamiento deben equilibrar los requisitos del sistema de almacenamientocon respecto a los requisitos de escribir un código de aplicación eficaz y fácil demantener.ACCESO A DATOSEntity Framework permite a los desarrolladores trabajar con datos en forma deobjetos y propiedades específicos del dominio, como clientes y direcciones decliente, sin tener que preocuparse por las tablas y columnas de la base de datossubyacente donde se almacenan estos datos.Con Entity Framework, los desarrolladores pueden trabajar en un nivel mayor deabstracción cuando tratan con datos, y pueden crear y mantener aplicacionesorientadas a datos con menos código que en las aplicaciones tradicionales.Dado que Entity Framework es un componente de .NET Framework, lasaplicaciones de Entity Framework se pueden ejecutar en cualquier equipo en elque esté instalado .NET Framework a partir de la versión 3.5 SP1.Entity Framework permite a los desarrolladores crear aplicaciones de acceso adatos programando con un modelo de aplicaciones conceptuales en lugar deprogramar directamente con un esquema de almacenamiento relacional.
  6. 6. El objetivo es reducir la cantidad de código y el mantenimiento necesarios para lasaplicaciones orientadas a datos.Como algo más que otra solución de asignación objeto-relacional, EntityFramework trata fundamentalmente de permitir que las aplicaciones obtenganacceso y cambien los datos que están representados como entidades y relacionesen el modelo conceptual. Entity Framework usa la información de los archivos delmodelo y de asignación para traducir las consultas de objeto con los tipos deentidad que se representan en el modelo conceptual en consultas específicas delorigen de datos. Los resultados de la consulta se materializan en objetos queEntity Framework administra. Entity Framework proporciona las manerassiguientes de consultar un modelo conceptual y devolver objetos:Como algo más que otra solución de asignación objeto-relacional, EntityFramework trata fundamentalmente de permitir que las aplicaciones obtenganacceso y cambien los datos que están representados como entidades y relacionesen el modelo conceptual. Entity Framework usa la información de los archivos delmodelo y de asignación para traducir las consultas de objeto con los tipos deentidad que se representan en el modelo conceptual en consultas específicas delorigen de datos. Los resultados de la consulta se materializan en objetos queEntity Framework administra. Entity Framework proporciona las manerassiguientes de consultar un modelo conceptual y devolver objetos:LINQtoEntities. Proporciona compatibilidad con Language-IntegratedQuery(LINQ) para consultar los tipos de entidad que se definen en un modeloconceptual.Entity SQL. Un dialecto de SQL, independiente del almacenamiento, quetrabaja directamente con entidades del modelo conceptual y que admiteconceptos de Entity Data Model. Entity SQL se utiliza tanto con consultasde objeto como con consultas que se ejecutan utilizando el proveedorEntityClientEl Entity Framework incluye el proveedor de datos de EntityClient. Este proveedoradministra las conexiones, traduce las consultas de entidad en consultas
  7. 7. específicas del origen de datos y devuelve un lector de datos que EntityFramework usa para materializar los datos de la entidad en los objetos. Cuando nose requiere la materialización de los objetos, el proveedor de EntityClient tambiénse puede utilizar como un proveedor de datos ADO.NET estándar habilitando lasaplicaciones para ejecutar consultas Entity SQL y usar el lector de datos de sololectura devuelto.VENTAJASLas aplicaciones de Entity Framework ofrecen las siguientes ventajas:Las aplicaciones pueden funcionar en términos de un modelo conceptualmás centrado en la aplicación, que incluye tipos con herencia, miembroscomplejos y relaciones.Las aplicaciones están libres de dependencias de codificación rígida deun motor de datos o de un esquema de almacenamiento.Las asignaciones entre el modelo conceptual y el esquema específico dealmacenamiento pueden cambiar sin tener que cambiar el código de laaplicación.
  8. 8. Los desarrolladores pueden trabajar con un modelo de objeto deaplicación coherente que se puede asignar a diversos esquemas dealmacenamiento, posiblemente implementados en sistemas deadministración de base de datos diferentes.Se pueden asignar varios modelos conceptuales a un único esquema dealmacenamiento.La compatibilidad con LanguageIntegratedQuery (LINQ) proporcionavalidación de la sintaxis en el momento de la compilación para consultasen un modelo conceptual.Desde su primera versión, el elemento más crítico en Entity Framework ha sido elObjectContext. Esta es la clase que nos permite interactuar con una base de datosutilizando un modelo conceptual. El contexto nos permite expresar y ejecutarconsultas, seguimiento de cambios en los objetos y persisten los cambios a labase de datos. La clase ObjectContext interactúa con otras clases de EntityFramework importantes como el ObjectSet, lo que permite que las operacionesque figuran en nuestras entidades en la memoria y ObjectQuery, que es el cerebrodetrás de la ejecución de consultas. Todas estas clases están equipadas con lascaracterísticas y la funcionalidad de algunas de ellas complejas y muchas de ellassólo es necesaria para los casos especiales.Consciente de ello, el equipo de Entity Framework se propuso hacer más fácil paralos desarrolladores acceder a los patrones más utilizados para trabajar con objetosde Entity Framework. Su solución fue un nuevo conjunto de clases queencapsulan este subconjunto de características ObjectContext. Estas nuevasclases utilizan el ObjectContext detrás de las escenas, pero los desarrolladorespueden trabajar con ellos sin tener que enredarse con el ObjectContext a menosque necesitan para utilizar específicamente algunas de las características másavanzadas.VERSIONES
  9. 9.  La primera versión de Entity Framework (EFv1) se incluye con.NETFramework 3.5 Service Pack 1 y Visual Studio 2008 Service Pack 1,lanzado el 11 de agosto de 2008. La segunda versión de Entity Framework, llamado Entity Framework 4.0(EFv4), fue lanzado como parte de. NET 4.0, el 12 de abril de 2010. La tercera versión de Entity Framework, versión 4.1, fue lanzado el 12 deabril de 2011. Una actualización de la versión 4.1 llamada Entity Framework 4.1 Update 1,fue lanzado el 25 de julio de 2011. Que incluye correcciones de errores ynuevos tipos de apoyo. La versión 4.3.1 fue lanzada el 29 de febrero de 2012. Hay un par deactualizaciones, como es el soporte para la migración. La última versión es la 5.0.0, ésta posee las siguientes características:Nuevos tipos de datos (Tipos enumerados (Enum), Tipos de datosespaciales, expuestos mediante los tipos DBGeography yDbGeometry).Posibilidad de trabajar con funciones que devuelven datos tabulares.El resultado es similar a la llamada a un procedimiento almacenado,con la diferencia de que podemos utilizar estas funciones enconsultas LINQ.Todas las consultas LINQ se compilan y cachean de formaautomática. Con ello se obtiene un mejor rendimiento en llamadasrecurrentes a las consultas.Soporte a múltiples diagramas para un mismo modelo de datos. Sepodrán visualizar partes del modelo completo en diagramas máspequeños, con lo que se mejora la lectura y exploración del modelo. Mejoras generales en el rendimiento de EF respecto a versiones anteriores.
  10. 10.  Posibilidad de utilizar procedimientos almacenados que devuelven múltiplesconjuntos de resultados. Cada conjunto de resultados del procedimiento serámapeando un tipo complejo propio.MODELO VISTA CONTROLADOREl MVCes un patrón de arquitectura de software que separa los datos y la lógicade negocio de una aplicación de la interfaz de usuario y el módulo encargado degestionar los eventos y las comunicaciones. Para ello MVC propone laconstrucción de tres componentes distintos que son el modelo, la vista y elcontrolador, es decir, por un lado define componentes para la representación de lainformación, y por otro lado para la interacción del usuario. Este patrón de diseñose basa en las ideas de reutilización de código y la separación de conceptos,características que buscan facilitar la tarea de desarrollo de aplicaciones y suposterior mantenimiento.Aunque originalmente MVC fue desarrollado para aplicaciones de escritorio, hasido ampliamente adaptado como arquitectura para diseñar e implementaraplicaciones web en los principales lenguajes de programación. Se handesarrollado multitud de frameworks, comerciales y no comercialesDESCRIPCIÓN DEL PATRÓNModelos.- Es la representación específica de la información con la cual el sistemaopera, por lo tanto gestiona todos los accesos a dicha información, tanto consultascomo actualizaciones, implementando también los privilegios de acceso que sehayan descrito en las especificaciones de la aplicación (lógica de negocio). Envíaa la vista aquella parte de la información que en cada momento se le solicita paraque sea mostrada (típicamente a un usuario). Las peticiones de acceso omanipulación de información llegan al modelo a través del controlador.Vistas.- Las vistas son los componentes que muestra la interfaz de usuario de laaplicación. Normalmente, esta interfaz de usuario se crea a partir de los datos de
  11. 11. modelo. Un ejemplo sería una vista de edición de una tabla Productos quemuestra cuadros de texto, listas desplegables y casillas basándose en el estadoactual de un objeto Product.Controladores.- Los controladores son los componentes que controlan lainteracción del usuario, trabajan con el modelo y por último seleccionan una vistapara representar la interfaz de usuario. En una aplicación MVC, la vista solomuestra información; el controlador administra y responde a los datosproporcionados por el usuario y su interacción. Por ejemplo, el controladoradministra los valores de la cadena de consulta y pasa estos valores al modelo,que a su vez podría utilizarlos para consultar la base de datos.CONCLUSIONES
  12. 12. Podríamos llegar a decir que Entity Framework es una forma de abstraerse deltipo de Base de Datos que existe detrás de un sistema, gracias al mapeo delas tablas hacia entidades.Las aplicaciones que trabajan con Entity pueden funcionar en términos de unmodelo conceptual más centrado en la aplicación que incluye tipos conherencia, abstracciones y demás propiedades de la POO.Las asignaciones entre los controladores, el modelo conceptual y el esquemaespecífico de almacenamiento pueden cambiar sin tener que cambiar el códigode la aplicación.Los desarrolladores pueden trabajar con un modelo de objeto de aplicacióncoherente que se puede asignar a diversos esquemas de almacenamiento,posiblemente implementados en sistemas de administración de base de datosdiferentes.Se pueden asignar varios modelos conceptuales a un único esquema dealmacenamiento.
  13. 13. BIBLIOGRAFÍAASP.NET. (s.f.). Obtenido de http://www.asp.net/entity-frameworkECURED. (s.f.). Obtenido de http://www.ecured.cu/index.php/Entity_frameworkEn español Msdn. (s.f.). Obtenido de http://msdn.microsoft.com/es-es/library/dd381412(v=vs.100).aspxMSDN. (s.f.). Obtenido de http://msdn.microsoft.com/es-es/library/bb399567.aspxMSDN. (s.f.). Obtenido de http://msdn.microsoft.com/es-es/library/bb399572.aspx

×