¿Qué es Entity Framework?
Primero que nada, aparte de saber un
poquito sobre varios temas en el área de informática, también he sido desarrollador,
y más sobre plataforma de .net, ya que no se puede negar que Microsoft tiene
uno de los mejores IDE para el desarrollo de aplicaciones.
¿Qué es Entity Framework? Era la pregunta que me hacía y buscaba en
internet y muchas veces aunque tengamos
mucha experiencia en el desarrollo con uno o más lenguajes, hay en ocasiones que nos dificulta entender
nuevos conceptos; en lo personal a mí me pasa cuando tengo que entrar a un nuevo
tema varias veces se me dificulta comprenderlo y algo a si me paso con el
Entity Framework y por más que buscaba me costaba entenderlo.
Entity Framework y para no hablarlo muy técnico,
es simplemente la última forma que Microsoft nos brinda para realizar las
conexiones hacia fuentes de datos, no de la manera que estamos acostumbrados,
con adaptadores, datasets y datatables como hemos aprendido, si no trabajar con
los datos en formas de objetos y
propiedades sin tener que preocuparnos por tablas y columnas de la base datos,
donde se almacenan estos datos.
En otras palabras si se desea trabajar
con EF (Entity Framework), tenemos que quitarnos de la mente lo que son los
datasets y data tables, aquí se trabaja con clases que son entidades de una
base de datos, o entidades personalizadas para uso interno de la aplicación y
es lo bonito de este tema, que trabajamos de una forma abstracta, esta última palabra tiende a confundir a mucho
y simplemente nos quieren dar a entender
que podemos manipular la información en el ambiente de la aplicación de la
forma que mejor nos funcione y sin importar como se encuentre en la base de
datos.
Si aún no está claro lo que he dicho y
eres del mundo de los datasets y dataTables, y de Visual Basic,
Es simplemente que utilizando el conjunto
de nueva tecnología de ADO.net accesaras a la información de las base datos, harás
la consulta que necesites y el resultado en vez de volcarlo en un datatable, lo
harás en objetos de listas que almacenan la información en base a un tipo de clase
y si no me entiendes a un lo hare con el ejemplo siguiente:
Tengo
la siguiente clase
Public Class Cliente
Public Property ID As Integer
Public Property Nombre As String
End Class
Esta clase sería una
entidad que podría representar una tabla en una base de datos; Ahora yo deseo
una lista que tiene a dos clientes:
Dim Lista As New List(Of Cliente)
Lista.Add(New Cliente With {.Id = 1, .Latitud = "Jose"})
Lista.Add(New Cliente With {.Id = 2,
.Latitud = "Maria"})
Como
se observa instancio una objeto llamado Lista
y posteriormente le agrego dos registros cuyo tipo de datos deberá ser
un objeto de tipo de clase cliente y el objeto contiene el id y nombre del
cliente, y de esta forma tengo un listado.
Explico
esto porque cuando usen le acceso a datos con EF la información se obtiene en
un solo objeto del tipo de la clase entidad o en objetos de tipo lista.
Una vez planteado el ejemplo anterior, te
diré que necesitas saber sobre el tema de Linq (Language-Integrated
Query) lenguaje para realizar consultas en el ambiente de la aplicación, y que
lo introdujo algunos años atrás Microsoft en lo personal me gusta mucho esta
forma de consultas, ya que me ha horrado en muchas ocasiones escribir código.
También debes familiarizarte
en utilizar clases u objetos de tipo List(of T) , o de las clases de las cuales
se deriva esta.
Con este post mi deseo es ayudar un poco
en entender lo que es EF en futuros post Ya are ejemplos de cómo comenzar con EF.
Se me olvidaba hay dos términos que son Code
First y EF Designer, son dos formas de manejar lo que son las entidades, la
primera el concepto se trata que tu creas las clases a tus necesidad vía código
y de ahí parte el diseño de base de datos o simplemente quieres hacerlo vía código.
Y el segundo utilizas la Herramienta de
Diseño de modelado que puede generar las entidades partiendo de la estructura
existente de una base de datos.
Cada una tiene sus ventajas y desventajas
y en futuros post hablaremos de estos métodos.
No hay comentarios.:
Publicar un comentario