non sto usando Single
in LINQ in basso, ma sto ancora ottenendo un 'sequenza non contiene elementi' eccezione:sequenza non contiene elementi un'eccezione in LINQ senza nemmeno usare singolo
allNames = StockCollection.Where((s) => s.Name.IndexOf("A") == 0)
.Select((s) => s.Name)
.Aggregate((namesInfo, name) => namesInfo += ", " + name);
Questa eccezione viene quando c'è nessuna azione che inizia con il nome 'A'
.
Sembra che un metodo di estensione si aspetti almeno un elemento che soddisfa la condizione ma non è previsto.
Potete suggerire la soluzione migliore per risolvere questo problema?
Grazie in anticipo.
Grazie mille per la risposta ho intenzione di provare questo ora .. Ma ancora voglio sapere perché aggregato sta gettando un'eccezione. –
@D J: perché? Quale valore ragionevole potrebbe restituire? Forse il valore predefinito del tipo restituito ('null' in questo caso), ma non lo vorrei. – Ani
Il problema è come se non sapessimo in fase di esecuzione che la nostra collezione avrà qualche oggetto o no? quindi non dovrebbe generare un'eccezione o può solo restituire il valore predefinito. –