Bonjour,
Je suis actuellement en train d'utiliser linq et les lambda expression et je me pose une question concernant l'écriture.
J'ai une reqûete qui ressemble à ceci.
	
	1 2 3 4 5 6
   |  
var listEnigme =  listEnigme .Where(e => 
	e.SolutionList != null && 
	e.SolutionList.FirstOrDefault(ls => ls.Number == e.SolutionList.Max(max=>max.Number)) != null &&
	e.SolutionList.FirstOrDefault(ls => ls.Number == e.SolutionList.Max(max=>max.Number)).coef != null &&
	e.SolutionList.FirstOrDefault(ls => ls.Number == e.SolutionList.Max(max=>max.Number)).coef < 100); break;  | 
 	
Le but est d'obtenir la liste des énigme donc la dernière solution à un coefficient inférieur à 100.
La dernière solution correspond à la solution ayant le plus grand Number.
Je voudrais savoir s'il n'est pas possible d'introduire une variable afin de ne pas avoir à répeter 
	
	e.SolutionList.FirstOrDefault(ls => ls.Number == e.SolutionList.Max(max=>max.Number))
 
En gros fgaire quelque chose comme ça:
	
	1 2 3 4 5 6 7
   |  
var listEnigme =  listEnigme .Where(e => 
e.SolutionList != null && 
((mx => e.SolutionList.FirstOrDefault(ls => ls.Number == e.SolutionList.Max(max=>max.Number))) 
	&& mx!=null
	&& mx.coef != null &&
		mx.coef < search.coef));  | 
 
Par avance merci beaucoup à vous.
						
					
Partager