var
ist ein Platzhalter für einen vom Compiler erstellten ("anonymen") Typ Das hat drei Eigenschaften, ProductName
, Category
und Price
.
Es ist KEINE Variante (z. B. wie in Visual Basic). Es ist ein konkreter Typ und kann auch an anderen Stellen im Code verwendet werden.
Die zwei Zeilen:
%Vor%und
%Vor% sind gleichwertig. CompilerGeneratedType
ist ein Typ, der vom Compiler erstellt wird und die drei öffentlichen Eigenschaften ProductName, Price, and Category
aufweist. var
ist aus zwei Gründen hilfreich:
CompilerGeneratedType
wird vom Compiler generiert, so dass es unmöglich ist, eine Variable mit diesem Typ zu deklarieren. In diesem speziellen Fall ist der Typ von productInfos ein Compiler-generierter anonymer Typ mit 3 Eigenschaften, Produktname, Kategorie und Preis.
Variablen mit var sind implizit typisierte lokale Variablen, die stark typisiert sind, als ob Sie den Typ selbst deklariert hätten, aber der Compiler bestimmt den Typ. es erhält den Typ des Ergebnisses.
und hier eine nette Lektüre C # -Debatte: Wann sollten Sie var verwenden?
und hier ein weiteres C # 3.0-Lernprogramm
Tags und Links linq anonymous-types