hola Queria agredecer por al ayuda a todo, al final pude solucionar el problema Efectivamente era un problema con la implementacion del filtro
projectionSubset = (from projection in ProjectionsService.GetAll() where ((projection.ProjectionYear > 2009) || ((projection.ProjectionYear == 2009) && (projection.ProjectionMonth >= 10))) select projection).ToList<Projection>(); projectionSubset = (from projection in projectionSubset where (projection.ProjectionYear < 2010) || ((projection.ProjectionYear == 2010) && (projection.ProjectionMonth <= 10)) select projection).ToList<Projection>(); de esta forma funciona perfecto muchas gracias saludos ________________________________ De: Fernando Rodriguez <ferro...@gmail.com> Para: puntonet@mug.org.ar Enviado: jueves, 17 de diciembre, 2009 10:28:03 Asunto: [puntonet] Linq - problema con filtro En este caso el problema no es linq. El problema esta en la condicion. Si pedis (projection.ProjectionYear >= 2009 && projection.ProjectionMonth >= 12) //llamemos a esto a || (projection.ProjectionYear <= 2010 && projection.ProjectionMonth <= 12) //llamemos a esto b a devuelve solo el mes 12 de 2009 y años siguientes, ya que no hay ningun mes mayor a 12.... b devuelve los meses desde el mes 12 de 2010 para abajo --> si no hay cargados años mayores a 2010 da la sensacion de no filtrar nada si filtras por a y luego por b, es equivalente a hacer una interseccion: a interseccion b --> el resultado es: por a los meses 12 del 2009 y años siguientes. por b, meses anteriores o iguales al 12 de 2010. La interseccion es el mes 12 del 2009 y 12 de 2010 El 17 de diciembre de 2009 08:45, Leonardo Micheloni <leonardogabrielmichel...@gmail.com> escribió: Probaste clavarle un Reflector a ver el delegado que genera?? en una >>de esas te da más pistas....bue, yo haría eso :) > >>2009/12/16 Leandro Tuttini <ltuttini_lis...@yahoo.com.ar>: >>> hola >>> >>> les planteo una situacion algo extraña, que la verdad no entiendo porque no >>> funciona no parece muy compleja la situacion >>> resulta que tengo un lista de proyecciones de desembolso de prestamos y la >>> idea es filtrar por año-mes de inicio y fin >>> >>> al principio la idea era ahcer algo como esto: >>> >>> List<Projection> projectionSubset; >>> >>> projectionSubset = (from projection in >>> ProjectionsService.GetAll() >>> where (((projection.ProjectionYear >= 2009) >>> && (projection.ProjectionMonth >= 12)) >>> || ((projection.ProjectionYear <= >>> 2010) && (projection.ProjectionMonth <= 12))) >>> select projection).ToList<Projection>(); >>> >>> pero note que esto no me filtraba correctamente, es mas no filtraba nada >>> directamente >>> >>> luego intente con esta otra forma >>> >>> List<Projection> projectionSubset; >>> >>> projectionSubset = (from projection in >>> ProjectionsService.GetAll() >>> where (projection.ProjectionYear >= 2009) >>> && (projection.ProjectionMonth >= 12) >>> select projection).ToList<Projection>(); >>> >>> projectionSubset = (from projection in projectionSubset >>> where (projection.ProjectionYear <= 2010) >>> && (projection.ProjectionMonth <= 12) >>> select projection).ToList<Projection>(); >>> >>> pero resulto que solo devolvia las proyecciones del año 2009 y mes 12 >>> y la del 2010 año 12 pero solo estos dos meses el resto los descarta >>> >>> sera un tema que el >= y <= en linq no funciona como deberia ? >>> me suena extraño >>> >>> pero bueno notan que estoy haciando algo incorrecto? >>> >>> la idea es devolver todas la proyecciones entre estos rango de año-mes >>> >>> gracias >>> saludos >>> >>> ________________________________ >>> Encontra las mejores recetas con Yahoo! Cocina. >>> http://ar.mujer.yahoo.com/cocina/ > > Yahoo! Cocina Encontra las mejores recetas con Yahoo! Cocina. http://ar.mujer.yahoo.com/cocina/