Anonyme Typen

Gelegentlich benötigt ein Programm lokal, und nur an einer einzigen Stelle, einen Typ, um Werte zusammenzufassen. Beispielsweise für ausgewählte Attribute einer LINQ-Abfrage. Hierfür gibt es die sogenannten anonymen Typen:

var value = new {
LastName = "Clinton",
FirstName = "Bill" };
Anonyme Typen können nur per var zugewiesen werden, sind nur lokal verwendbar und können nur gelesen werden. Interessant ist, dass zwei anonyme Typen, die über die gleichen Eigenschaftennamen, -typen und -reihenfolge verfügen, für den Compiler identisch sind — sie lassen sich also durchaus vergleichen. Variiert nur einer dieser Faktoren, wird ein neuer anonymer Typ erzeugt.