No es muy adaptable a los cambios en el esquema de la base de datos. Debe reconstruir la capa de dbml y regenerar sus contextos de datos.
Al igual que cualquier ORM (no estoy entrando en el debate si se trata de un ORM o no), debe tener en cuenta qué SQL se está generando y cómo eso influirá en sus llamadas.
Los insertos no están agrupados, por lo que puede tener un alto costo en rendimiento.
Está siendo sunsetted a favor de la Entidad marco
A pesar del hecho de que está utilizando un modelo de proveedor que permitirá a los proveedores que se construirán para otras plataformas DBMS, sólo es compatible con SQL Server.
[EDITAR @ AugustLights - En mi experiencia:] La carga diferida puede tomar un poco de piratería para conseguir trabajo.
Dicho esto, creo que es muy útil si se utiliza correctamente
¿Qué tal si no estás usando el diseñador o code-gen? El mapeo se puede hacer a través de atributos o configuración XML - respondiendo a un cambio en el esquema en este caso con Linq a SQL sería similar a otros ORM, ¿no? –
Créeme, Erik, no quieres hacer el mapeo manualmente. Hay demasiados atributos que necesita establecer. Oh, una cosa más El diseñador de LINQ to SQL tiene muchos errores. – azamsharp
Muy cierto, pero el típico usuario de LINQ to SQL no estaría pirateando el XML, pero es cierto, al igual que las limitaciones de LINQ 2 SQL y EF en la experiencia del diseñador – johnc