Soy nuevo en LINQ. Necesito calcular NEW_ID de la siguiente manera:LINQ "MaxOrDefault"?
public class C_Movement
{
public int id=-1;
public static ObservableCollection<C_Movement> list=new ObservableCollection<C_Movement>();
// ...
}
int new_id = (C_Movement.list.Count==0) ? 0 : C_Movement.list.Max(x => x.id)+1;
¿Hay una manera de LINQ para compactar esa expresión, por lo que yo no tengo que usar el ":" estructura? El problema es que, cuando C_Movement.list no contiene elementos, C_Movement.list.Max (x => x.id) devuelve null (y me gustaría que devuelva -1, en su lugar).
Gracias.
método
¿Cómo puede devolver nulo cuando devuelve un número entero? – MikeP
Para referencia futura, la estructura "?:" Se llama realmente * el operador condicional * (en documentos de MSDN), pero la mayoría de la gente lo llama * el operador ternario. * :) –