jueves, 12 de abril de 2012

Consultas dinámicas en Linq (Uso de LIKE en Linq)

En ADO estaba acostumbrado a utilizar LIKE para desplegar información dependiendo de un criterio.

Por ejemplo, si tenía que listar los artículos de una o todas las bodegas, lo que hacía era poner un combo con las bodegas disponibles y al final a este combo le agregaba un item para que el usuario pudiera seleccionar "Todas Las Bodegas" y a este nuevo item le asignaba como valor: "%".

De esta manera, podía hacer mi QUERY en el COMMAND de Artículos de la siguiente forma:

SELECT Articulo, Nombre FROM Articulos WHERE Bodega LIKE "'" + cbBodega.SelectedValue + "'";

Pero ahora, como se hace para tener aplicar el equivalente de LIKE en Linq??

Lo primero que tenemos que hacer es usar el siguiente Namespace:

using System.Data.Linq.SqlClient:

Luego, en Linq usamos LIKE de la siguiente forma:

var q =
      from a in db.Articuloss
      where SqlMethods.Like(a.Bodega, cbBodega.SelectedValue)
      select a;

La verdad yo estaba preocupado por no poder utilizar LIKE en Linq, pero resultó Fácil cierto??

Salu2 a todos!!!

No hay comentarios:

Publicar un comentario