query - linq c# tutorial español
C#Seleccionar elementos en la lista como Lista de cadenas (2)
List<string> empnames = (from e in emplist select e.Enaame).ToList();
O
string[] empnames = (from e in emplist select e.Enaame).ToArray();
Etc ...
En C # necesito obtener todos los valores de una propiedad particular de una lista de objetos en una lista de cadenas
List<Employee> emplist = new List<Employee>()
{
new Employee{ EID=10, Ename="John"},
new Employee{ EID=11, Ename="Adam"},
new Employee{ EID=12, Ename="Ram"}
};
List<string> empnames = emplist.//get all Enames in ''emplist'' object into list
//using linq or list functions or IENumerable functions
Estoy familiarizado con el método foreach para extraer el valor, pero quiero saber si / cómo es posible utilizar linq o IENumerable funciones o algún código más corto para extraer valores de los valores de propiedades del objeto list en un objeto string.
Mi consulta es similar a C # seleccionar elementos de IList pero quiero el resultado como lista de cadena
List<string> empnames = emplist.Select(e => e.Ename).ToList();
Este es un ejemplo de proyección en Linq . Seguido por una lista ToList
para resolver el IEnumerable<string>
en una List<string>
.
Alternativamente en la sintaxis de Linq (head compiled):
var empnamesEnum = from emp in emplist
select emp.Ename;
List<string> empnames = empnamesEnum.ToList();
La proyección básicamente representa el tipo actual del enumerable como un nuevo tipo. Puede proyectar a tipos anónimos, otro tipo conocido llamando constructores, etc., o un enumerable de una de las propiedades (como en su caso).
Por ejemplo, puede proyectar un enumerable de Employee
a un enumerable de Tuple<int, string>
como tal:
var tuples = emplist.Select(e => new Tuple<int, string>(e.EID, e.Ename));