c# c#-2.0

c# - Convertir una matriz de cadenas a List<string>



c#-2.0 (2)

He visto ejemplos de esto usando .ToList() en tipos de matriz, esto parece estar disponible solo en .Net 3.5+ . Estoy trabajando con .NET Framework 2.0 en un proyecto ASP.NET que no se puede actualizar en este momento, por lo que me preguntaba: ¿hay alguna otra solución? Uno que es más elegante que recorrer el conjunto y agregar cada elemento a esta lista (lo cual no es problema, solo me pregunto si existe una mejor solución para el aprendizaje).

string[] arr = { "Alpha", "Beta", "Gamma" }; List<string> openItems = new List<string>(); foreach (string arrItem in arr) { openItems.Add(arrItem); }

Si tengo que hacerlo de esta manera, ¿hay alguna manera de desasignar la matriz persistente de la memoria después de copiarla en mi lista?


Desde .Net 3.5 puede usar el método de extensión LINQ que (a veces) hace que el flujo de código sea un poco mejor.

El uso se ve así:

using System.Linq; // ... public void My() { var myArray = new[] { "abc", "123", "zyx" }; List<string> myList = myArray.ToList(); }

PD. También hay ToArray() método ToArray() que funciona de otra manera.


Solo use este constructor de List<T> . Acepta cualquier IEnumerable<T> como argumento.

string[] arr = ... List<string> list = new List<string>(arr);