linqtosql framework linq-to-sql entity-framework orm entity-framework-4

linq-to-sql - linqtosql - linq to sql vs entity framework



¿Desea descargar Linq-To-Sql ahora que se ha lanzado Entity Framework 4.0? (2)

@marc_s, @DanM:

Por favor, no considere esta publicación como un anuncio :) Solo queremos saber la opinión de los usuarios avanzados de Linq to Sql.

Hemos implementado las siguientes mejoras en nuestro LinqConnect (Linq to Sql Server, Oracle, MySql, PostgreSql, SQLite):

- Complex Type - Many to Many - Batch update operations - Recursive support in DataLoad options - Query level preload (like Include in EF) - TPT support (in LinqConnect 2.0)

También planeamos agregar soporte para caché de segundo nivel.

¿Son estas mejoras valiosas para ti?

La simplicidad relativa de Linq-To-Sql, así como todas las críticas dirigidas a la versión 1 de Entity Framework (especialmente, el voto de no confianza ) me convencieron de ir con Linq-To-Sql "por el momento". Ahora que EF 4.0 está fuera, me pregunto si es hora de comenzar a migrar a él.

Preguntas:

  1. ¿Cuáles son los pros y los contras de EF 4.0 en relación con Linq-To-Sql?
  2. ¿Está EF 4.0 finalmente listo para el prime time?
  3. ¿Ahora es el momento de cambiar?

Bueno, un debate interminable :-)

Sí, creo firmemente que EF4 está definitivamente listo para el prime time: Microsoft ha hecho un excelente trabajo al abordar casi todas las molestias y problemas con la versión 1.0 de EF.

Está listo para el horario de máxima audiencia, si necesita todas sus características.

Linq-to-SQL es un mapeador OR bastante sencillo, sencillo, sin complicaciones, que asigna una tabla de base de datos a un objeto CLR, y eso es todo. Muy básico, muy directo, pero una capa bastante delgada sobre SQL Server.

EF4 por otro lado es mucho más

  • Un modelo conceptual de datos en tu espacio de objetos.
  • un modelo de datos de almacenamiento en su capa de base de datos
  • una capa de mapeo entre los dos
  • base de datos independiente

Entonces, si realmente necesita soporte para múltiples bases de datos (y no solo SQL Server), o si realmente necesita poder transformar la estructura de la base de datos en un modelo de objeto totalmente diferente, EF4 es un excelente lugar para comenzar.

Si tiene una aplicación simple y sencilla de tamaño pequeño a mediano que solo necesita poder mapear de forma fácil y rápida las tablas 1: 1 a los objetos, entonces no creo que EF4 se acerque tanto en términos de simplicidad como de rendimiento a Linq- a-SQL.

EF4 es genial, y si necesitas su poder, ¡adelante!

Pero si sus requisitos son mucho menos, podría ser una exageración: continúe usando Linq-to-SQL (lo haré) y esté contento con él. No veo ninguna buena razón para deshacerme de Linq-to-SQL: todavía está totalmente disponible en .NET 4, ha sido bendecido con algunas correcciones de errores y mejoras , y estará disponible por lo menos durante un par de años más.