March 2009 - Artículos

LINQ TO SQL: Uso de NULL

Leyendo C# 3.0 in a Nutshell (Pedazo de libro) he podido aprender acerca del uso de null en consultas LINQ TO SQL y voy a intentar explicarlo como yo lo he entendido. Partiendo de esta tabla de ejemplo: Vamos a empezar a lanzar consultas utilizando LINQPad y a observar los resultados: Customers.Where(c => c.Telephone == null ).Dump( "IS NULL" ); La sentencia SQL que se genera: SELECT [t0].[CustomerId], [t0].[Name], [t0].[Surname], [t0].[Telephone], [t0].[Email] FROM [Customers] AS [t0...
Publicado por Luis Ruiz Pavón | 8 comment(s)
Archivado en: ,,,,

LINQ: Deferred Execution (Ejecución diferida): Cosas a tener en cuenta

Pues como dice el título, la ejecución diferida es una característica de algunos operadores de LINQ, qué sólo cuando se itera sobre los elementos del enumerable, se evalua la consulta (cuando se llama al método MoveNext) y no cuando se construye. No todos los operadores de LINQ causan esta ejecución diferida, hay excepciones: Operadores que retornan un sólo elemento o un valor escalar, como First, Last, Count… Operadores de conversión...
Publicado por Luis Ruiz Pavón | 1 comment(s)
Archivado en: ,,,