.NET 数据类型之匿名类型(var)

来源:互联网 发布:数控铣床卡通图案编程 编辑:程序博客网 时间:2024/06/05 14:23

 

  • 匿名类型
     匿名类型提供了一种方便的方法,可用来将一组只读属性封装到单个对象中,而无需首先显式定义一个类型。 类型名由编译器生成,并且不能在源代码级使用。 每个属性的类型由编译器推断。可通过使用 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);}

<script type="text/javascript"><!--google_ad_client = "ca-pub-1944176156128447";/* cnblogs 首页横幅 */google_ad_slot = "5419468456";google_ad_width = 728;google_ad_height = 90;//--></script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>