3ENGINE

Programación y otros cachivaches

Etiqueta: LINQ

Sin categoría

MSLinqToSQLGenerator: Unspecified error


Cuando añades una partial class a una clase «Linq to SQL» de LINQ tienes todos los números que en un momento u otro acabe saliendo un error «‘MSLinqToSQLGenerator’ failed. Unspecified error» ¡incluso aunque tengas instalado el SP1 de Visual Studio 2008!. Gracias a éste enlace pude solucionar el problema.

1º paso: los using debe estar dentro del «namespace». Es decir de esto:

debes pasar a esto:

2º paso: Ejecutar explicitamente la herramienta personalizada(MSLinqToSQLGenerator) de nuevo:

3ºpaso: limpia el proyecto y vuelve a compilar.




Sin categoría

LINQ con WCF: de carga diferida a explícita


LINQ por defecto utiliza la consulta diferida. Cuando «navegamos» entre las clases de un LINQ to SQL (.dbml) éste en background va generando las consultas y de este modo nos ahorramos consultas inutiles.

El problema viene cuando queramos devolver una clase que forma parte de un .dbml como resultado de un método marcado como [OperationContract].

Es necesario modificar el comportamiento por defecto de consulta diferida a una consulta forzada. Ejemplo:

Sino lo hacemos así nos encontraremos que las «clases hijas» no contienen datos.




Sin categoría

LINQ Dynamic Query


Si quieres hacer algo como esto en LINQ:

Lo llevas claro, porque.NET no permite realizar LINQ dinámico. Para solucionarlo existe una librería que añadiéndola a tu proyecto podrás hacer cosas como la del ejemplo.
Para descargar la librería y unos ejemplos éste es el enlace o este.

Referencias
Dynamic LINQ(Parte 1: Usando la librería de LINQ Dynamic)




Tecnologia

Diseño de consultas en LINQ


En esta dirección podeis encontrar una lista de artículos muy interesantes sobre cómo diseñar consultas LINQ.