Hier ist eine Abfrage-Ausdruck:
var users = (from a in dc.Benutzer
select new { a.Name, a.Age, a.Occupation }).ToList();
Oder in Punktnotation:
var users = dc.Benutzer.Select(a => new { a.Name, a.Age, a.Occupation })
.ToList();
Beachten Sie, dass dies eine Liste eines anonymous type gibt eher als Instanzen von Benutzer
. Persönlich bevorzuge ich diesen Ansatz gegenüber dem Erstellen einer Liste von teilweise bevölkerten Instanzen, da dann jeder, der sich mit den Teilinstanzen befasst, überprüfen muss, ob sie von ihm gekommen sind, um herauszufinden, was wirklich da sein wird.
EDIT: Wenn Sie wirklich Instanzen von Benutzer
aufbauen wollen, und LINQ ist nicht lassen Sie so in einer Abfrage zu tun (ich bin nicht sicher, warum) konnte man immer tun:
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();
dh Nutzung der anonyme Typ nur als DTO. Beachten Sie, dass die zurückgegebenen Objekte Benutzer
nicht mit einem Kontext verknüpft sind.
Sie haben den Typ 'Benutzer'? Überhaupt gedacht, lokalisierte C# zu verwenden? 'Liste benutzer = (aus a in d.c.Benutzer wähle a) .ZuListe();';) –