var
ist für anonyme Typen nützlich, die haben keine Namen für Sie zu nutzen.
Dadurch wird ein anonymer Typ mit den Eigenschaften X und Y erstellt. Es wird hauptsächlich zur Unterstützung von LINQ verwendet. Angenommen, Sie haben:
class Person
{
public String Name {get; set;}
public Int32 Age {get; set;}
public String Address {get; set;}
// Many other fields
}
List<Person> people; // Some list of people
Jetzt nehme ich nur die Namen auswählen möchten und Jahre bis zum Alter von 18 Jahren von den Menschen, die unter dem Alter von 18 sind:
var minors = from person in people where person.Age < 18 select new {Name = person.Name, YearsLeft = 18 - person.Age};
Jetzt minors
eine List
einiger enthält anonymer Typ Wir können die Leute mit iterieren:
foreach (var minor in minors)
{
Console.WriteLine("{0} is {1} years away from age 18!", minor.Name, minor.YearsLeft);
}
All dies sonst möglich wäre; wir müssten das gesamte Person-Objekt auswählen und dann YearsLeft in unserer Schleife berechnen, was nicht das ist, was wir wollen.
Und wenn ich sage, Ich weiß, dass es bereits zur Laufzeit tippt ... Ich meinte nur in Ihrer Logik. – Matt
möglich Duplikat von [Verwendung von var Schlüsselwort in C#] (http://stackoverflow.com/questions/41479/use-of-var-keyword-in-c-sharp) – nawfal