1. { ADO.Net Entities Framework } {Carlos Chávez V. } Arquitecto de Software [email_address] http://blogs.comunidadesandinas.com/blogs/cchavez/ [email_address] Evolucion de Acceso a Datos
10. {ADO.Net Entities Framework} Arquitectura Base de Datos relacional Soporte para consultas vía LINQ denominado LINQ to Entities Un modelo de objetos para acceder a la capa conceptual Un objeto para generar consultas dentro del modelo Object Services Lenguaje denominado eSQL o Entity SQL semejante a SQL pero con capacidades adicionales Niveles de abstracción Nivel conceptual descrito por un lenguaje denominado Conceptual Schema Definition Language (CSDL) Un lenguaje de mapeado de esquema lógico a esquema conceptual (MSL) Nivel Lógico descrito por un lenguaje denominado Store Schema Definition Language (SSDL) Proveedor de acceso a datos semejante a SqlClient
11. {ADO.Net Entities Framework} Entity Data Model Clases OO C-S MSL SSDL CSDL Presentación (Forms/Reports) Clases OO Modelo Conceptual Modelo Lógico Map Base de Datos Relacional Entity Data Model Schema Database Objects Schema Servicios
20. AdventureWorks db = new AdventureWorks(); Query<SalesPerson> newSalesPeople = db.GetQuery<SalesPerson >(@” SELECT VALUE sp FROM SalesPeople AS sp WHERE sp.HireDate > @Date" , new QueryParameter(“Date", hireDate)); foreach(SalesPerson p in newSalesPeople) { Console.WriteLine("{0}{1}", p.FirstName, p.LastName); } Otros… VB C# Base de Datos Relacional No hay intellisence Argumento debilmente enlazados No hay validación en tiempo de compilación
21. Others… VB C# .NET Language-Integrated Query (LINQ) LINQ enabled data sources LINQ enabled ADO.NET LINQ To Datasets LINQ To SQL LINQ To Entities LINQ To XML LINQ To Objects Objects <book> <title/> <author/> <price/> </book> XML Relational