.NET 数据类型之匿名类型(var)
- 匿名类型
匿名类型提供了一种方便的方法,可用来将一组只读属性封装到单个对象中,而无需首先显式定义一个类型。 类型名由编译器生成,并且不能在源代码级使用。 每个属性的类型由编译器推断。可通过使用 new 运算符和对象初始值创建匿名类型。
- 限制条件
-
- 没有控制匿名类型的名字
- 匿名类型继承自Object
- 匿名类型的字段和属性总是只读的
- 匿名类型不支持事件、自定义方法、自定义操作符和自定义重写
- 匿名类型是隐式封闭的
- 匿名类型的实例创建只使用默认构造函数
- 语法
var v = new { Amount = 108, Message = "Hello" };
var anonArray = new[] { new { name = "apple", diam = 4 }, new { name = "grape", diam = 1 }};
var productQuery =
from prod in products
select new { prod.Color, prod.Price };
foreach (var v in productQuery)
{
Console.WriteLine("Color={0}, Price={1}", v.Color, v.Price);
}
|