tutorial query español ejemplos c# linq

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));