Aquí es una expresión de consulta:
var users = (from a in dc.Benutzer
select new { a.Name, a.Age, a.Occupation }).ToList();
O en notación de puntos:
var users = dc.Benutzer.Select(a => new { a.Name, a.Age, a.Occupation })
.ToList();
Tenga en cuenta que esto devuelve una lista de un anonymous type en lugar de casos de Benutzer
. Personalmente, prefiero este enfoque sobre la creación de una lista de instancias parcialmente pobladas, ya que cualquier persona que se ocupe de las instancias parciales debe verificar si provienen para averiguar qué habrá realmente allí.
EDIT: Si realmente quiere construir instancias de Benutzer
, y LINQ es no dejar que lo haga de una consulta (no estoy seguro de por qué) siempre se puede hacer:
List<Benutzer> users = dc.Benutzer
.Select(a => new { a.Name, a.Age, a.Occupation })
.AsEnumerable() // Forces the rest of the query to execute locally
.Select(x => new Benutzer { Name = x.Name, Age = x.Age,
Occupation = x.Occupation })
.ToList();
es decir, el uso el tipo anónimo solo como DTO. Sin embargo, tenga en cuenta que los objetos Benutzer
devueltos no se asociarán con un contexto.
Tiene el tipo 'Benutzer'? ¿Alguna vez ha considerado usar C# localizado? 'Liste benutzer = (aus a in dc.Benutzer wähle a) .ZuListe();';) –