SoloCodigo

CLR: .Net / Mono / Boo / Otros CLR => C# => Mensaje iniciado por: Ryusaki N en Jueves 28 de Octubre de 2010, 01:14

Título: Linq To Objects
Publicado por: Ryusaki N en Jueves 28 de Octubre de 2010, 01:14
Hola, estoy probando algoritmos con LINQ en C# y trato de hacer los queries con expresiones Lambda, lo malo es que al correr la aplicación veo que hay problemas en el predicado de cada expresión ya que se detectan datos nulos y no comprendo por que. Trabajo con un arreglo de esta clase:
Código: C#
  1.  
  2.  public class producto
  3.     {
  4.  
  5.         public int idProducto;
  6.         public int cantidadProducto;
  7.         public string nombreProducto;
  8.  
  9.         public producto(int id, int cantidad, string nombre)
  10.         {
  11.             this.idProducto = id;
  12.             this.cantidadProducto = cantidad;
  13.             this.nombreProducto = nombre;
  14.         }
  15.  
  16.  
  17.  

A la hora de filtrar datos tomo el arreglo y digo:
Código: C#
  1.  
  2. x = Convert.ToInt32(Console.ReadLine());
  3.                                     var expr =
  4.                                         cl.productos //cl es la clase cliente que tiene el arreglo de la clase producto.
  5.                                         .Where((p) => p.cantidadProducto == x)
  6.                                         .Select((p) => p.nombreProducto);
  7.  
  8.                                     foreach (var item in expr)
  9.                                     {
  10.                                        Console.WriteLine("{0}", item);
  11.                                     }
  12.  
  13.  
  14.  

Pero p es nulo. Acaso me falta algo en el código? Una declaración para p? Gracias de antemano.

Saludos.