none
crear capa de entidades a partir base de datos

    Pregunta

  • Saludo, pues la simple pregunta es si es posible crear la capa de entidades a partir de una base de datos ya creada mendiante la utilización de alguna función en visual studio .net.

    Arismendy Rodríguez

    miércoles, 22 de febrero de 2017 22:41

Respuestas

  • No solo hay una forma de hacerlo, sino dos: Linq-to-sql y Entity Framework. Son dos tipos de ORM (Object-Relational Mapper), que "mapean" los datos relacionales (base de datos) a objetos en memoria (clases -- es decir, tu capa de datos).

    El más moderno es Entity Framework. Comienza por añadir a tu proyecto un "nuevo Item" y en la pestaña de datos que sale al añadir nuevo item elige "ADO.NET Entity Data Model". Esto dispara un asistente que te ofrece varias opciones, entre ellas la de conectarse a base de datos y crear todo el modelo a partir de ella. Esto añade al proyecto un fichero .edmx, que por debajo genera varios ficheros .cs o .vb con todas las clases que representan las entidades tu capa de datos más otra clase que es el contexto de datos que sabe grabar y leer esas entidades desde la base de datos.

    • Propuesto como respuesta Sergio Parra jueves, 23 de febrero de 2017 7:37
    • Marcado como respuesta mendy123z jueves, 23 de febrero de 2017 14:27
    miércoles, 22 de febrero de 2017 23:11

Todas las respuestas

  • No solo hay una forma de hacerlo, sino dos: Linq-to-sql y Entity Framework. Son dos tipos de ORM (Object-Relational Mapper), que "mapean" los datos relacionales (base de datos) a objetos en memoria (clases -- es decir, tu capa de datos).

    El más moderno es Entity Framework. Comienza por añadir a tu proyecto un "nuevo Item" y en la pestaña de datos que sale al añadir nuevo item elige "ADO.NET Entity Data Model". Esto dispara un asistente que te ofrece varias opciones, entre ellas la de conectarse a base de datos y crear todo el modelo a partir de ella. Esto añade al proyecto un fichero .edmx, que por debajo genera varios ficheros .cs o .vb con todas las clases que representan las entidades tu capa de datos más otra clase que es el contexto de datos que sabe grabar y leer esas entidades desde la base de datos.

    • Propuesto como respuesta Sergio Parra jueves, 23 de febrero de 2017 7:37
    • Marcado como respuesta mendy123z jueves, 23 de febrero de 2017 14:27
    miércoles, 22 de febrero de 2017 23:11
  • Gracias por la pronta respuesta, al tratar de seguir tus paso me prduce el siguinte error:

    Warning 2 Compiling transformation: La variable 'lazyLoadingAttributeValue' se ha pasado como referencia antes de haberle asignado un valor. Podría darse una excepción de referencia nula en tiempo de ejecución. C:\Users\Administrador\Documents\Visual Studio 2012\Projects\Solution2\Entity\Model1.tt 670 1 Entity

    Estoy usando visual studio 2012.

    si tienes un ejemplo del que pueda guiarme


    Arismendy Rodríguez

    jueves, 23 de febrero de 2017 2:12
  • No es difícil encontrar tutoriales si haces una búsqueda. Por ejemplo, en MSDN tienes este:

    https://msdn.microsoft.com/es-es/library/bb399182(v=vs.100).aspx

    Ten presente que el asistente que genera el .edmx es distinto en cada versión de Visual Studio, por lo que dependiendo de la versión que estés usando puede que no te salga exactamente idéntico a lo que indica el tutorial.

    Dicho eso, el error que te sale al ejecutar la plantilla tt no debería de salir. Tiene toda la pinta de que hay algún problema con la instalación que tienes (¿tal vez una mezcla de versiones?) Prueba a actualizar a la última versión, o a reparar o reinstalar Visual Studio.

    jueves, 23 de febrero de 2017 7:37