匿名类型

匿名类型就是没有名字的类型。在C#3.0中允许我们在程序中声明一个临时的类型来存储数据。匿名类型的对象是必须用var 来声明,但是用var 声明的对象不一定都是匿名对象

匿名类型一般在以下情况下使用:
1.匿名类型通常用在查询表达式的 select 子句中,以便返回源序列中每个对象的属性子集(Linq 中使用的比较多)
匿名类型包含一个或多个公共只读属性。 包含其他种类的类成员(如方法或事件)为无效。 用来初始化属性的表达式不能为 null、匿名函数或指针类型。

 

可通过将隐式键入的本地变量与隐式键入的数组相结合创建匿名键入的元素的数组,如下面的示例所示。

 var anonArray = new[] { new { name = "apple", diam = 4 }, new { name = "grape", diam = 1 }};


  var temp = [匿名变量(data)].GetType().GetProperties();

foreach(var item in temp)

{

  var key = item.Name;

  var value = item.GetValue(data,null);

}      

posted @ 2016-12-27 11:14  ecollab  阅读(163)  评论(0编辑  收藏  举报