Quando si utilizza questo codice di seguito, viene visualizzato l'errore di riferimento oggetto, ciò potrebbe essere dovuto al fatto che non esiste alcuna corrispondenza per "spider". La mia domanda è, come verificare la presenza di valore nullo in queste situazioniRiferimento oggetto Non impostato sull'istanza di un errore dell'oggetto durante l'utilizzo di FirstOrDefault
int fooID = foos.FirstOrDefault(f => f.Bar == "spider").ID;
Sto usando questo stesso scenario per condizioni diverse per andare a prendere diversi elementi dalla lista come
int fooID = foos.FirstOrDefault(f => f.Bar == "spider").ID;
String fooDescription = foos.FirstOrDefault(f => f.Sides == "Cake").Description;
C'è un altro modo per verificare valori nulli.
Inoltre degno di nota: verificare se 'foos' è' null' o meno (meno che non siate assolutamente certi che non può essere 'null') – Nolonar
E 'anche importante sapere che' null' è non è l'unico valore che puoi recuperare da 'FirstOrDefault', dipende dal tipo con cui stai lavorando. http://msdn.microsoft.com/en-gb/library/xwth0h0d(v=vs.80).aspx – Arran
Inoltre a volte è utile ottenere 0 (valore int iniziale) se la query contiene 0 elementi. Può essere fatto in questo modo: 'int fooID = foos.Where (f => f.Bar ==" spider "). Select (f => f.ID) .FirstOrDefault();' –