匿名类型
匿名类型提供了一种将一组只读属性封装到单个对象中的便捷方法,而无需先显式定义类型。类型名称由编译器生成,在源代码级别不可用。每个属性的类型由编译器推断。
你可以使用 new
关键字后跟大括号 ({
) 来创建匿名类型。在花括号内,你可以定义类似于以下代码的属性。
var v = new { Amount = 108, Message = "Hello" };
也可以创建一个匿名类型的数组。见下面的代码:
var a = new[] {
new {
Fruit = "Apple",
Color = "Red"
},
new {
Fruit = "Banana",
Color = "Yellow"
}
};
或者将它与 LINQ 查询一起使用:
var productQuery = from prod in products
select new { prod.Color, prod.Price };