Domanda
int[] mylist = { 2, 4, 5 };
IEnumerable<int> list1 = mylist;
list1.ToList().Add(1);
// why 1 does not get addedto list1??
Soluzione
Perché dovrebbe? ToList () genera un nuovo Elenco e il valore '1' viene aggiunto ad esso. Dal momento che non memorizzi il reso, il nuovo elenco viene quindi lanciato quando non rientra nell'ambito.
ToList () non modifica l'elenco originale di oggetti IEnumerable1 né fornisce una nuova rappresentazione (si chiamerebbe AsList () se lo facesse).
Altri suggerimenti
Devi:
int[] mylist = { 2, 4, 5 };
IEnumerable<int> list1 = mylist;
List<int> lst = list1.ToList();
lst.Add(1);
mylist = lst.ToArray();
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow