一、关于匿名类型的特性
1、匿名类型
定义:匿名对象
var vobj = new { id = "编号", title = "标题", content = "内容" };
访问:
var id = vobj.id;
结果:编号 2、结合匿名数组应用
定义:集合初始化器
var article = new[]
{
new { id = "编号一", title = "标题一", content = "内容一" }
new { id = "编号二", title = "标题二", content = "内容二" }
};
访问:
var title = article[1].title;
结果:标题二 3、结合匿名集合List集合
定义:
var list = article.ToList(); //Array转为List
list.Add(new { id = "编号三", title = "标题三", content = "内容三" });
article = list.ToArray(); //List转为Array
访问:
var content = article[2].content;
结果:内容三 4、结合JavaScriptSerializer序列化
var str = new System.Web.Script.Serialization.JavaScriptSerializer().Serialize(list);
结果:JSON字符串 5、结合结合控件
DropDownList ddl = new DropDownList();
ddl.DataSource = list;
ddl.DataTextField = "title";
ddl.DataValueField = "id";
ddl.DataBind(); 注:var关键字是C# 3.0开始新增的特性,只能用于局部变量使用(隐式类型变量) 6、Dictionary集合
Dictionary<string, string> dic = new Dictionary<string, string>();
dic.Add("key", "value");
注:键不允许重复 7、NameValueCollection集合
NameValueCollection col = new NameValueCollection();
col.Add("key", "value");
注:如果键值相同则合并 8、Hashtable集合
Hashtable ht = new Hashtable();
ht.Add("key","value");
注:键不允许重复 9、List集合
List<string> list = new List<string>();
list.Add("String");
注:任意,没有键/值 10、集合与LINQ检索表达式
using System.Linq;
using System.Collections; int[] items = new int[] { 1, 2, 3, 4, 5 };
IEnumerable<int> ints = from item in items
where item > 2.5
select item;
foreach (var p in ints)
{
Console.WriteLine(p);
} 关于:IEnumerable
实例应用:通过Linq查找再遍历,然后以JSON的格式输出到客户端; 11、集合迭代器
public System.Collections.IEnumerator GetEnumerator()
{
string[] days = { "Sun", "Mon", "Tue", "Wed", "Thr", "Fri", "Sat" };
for (int i = 0; i < days.Length; i++)
{
yield return days[i];
}
}

ASP.NET匿名对象与集合的使用的更多相关文章

  1. asp.net mvc 对象和集合序列化

    private List<Model.Organization.Organization> GetOrganiztions(){var organizations = new List&l ...

  2. ASP.NET MVC3控制器传递匿名对象到视图实例

    ASP.NET MVC3 + Entity Framework项目中,从控制器传递匿名对象到视图非常常见,原本以为用dynamic能轻松搞定,最后发现我错了: Controller:  代码如下 复制 ...

  3. java自学第4期——:Scanner类、匿名对象介绍、Random类、ArrayList集合、标准类格式、String类、static静态、Arrays工具类、Math类(1)

    一.Scanner类 1.api简介: 应用程序编程接口 2.Scanner类: 作用:获取键盘输入的数据 位置: java.util.Scanner. 使用:使用成员方法nextInt() 和 ne ...

  4. Scanner类、匿名对象、Random类、ArrayList集合、String类、static静态类、math类和Arrays工具类

    一.Scanner类 1.除了八种基本数据类型,其他都是引用类型: 引用类型使用三步骤: 2.Scanner类 引用jdk提供的类,Scanner在java.util包下,不在java.lang包(S ...

  5. 当类型为dynamic的视图模型遭遇匿名对象

    当年在ASP.NET MVC 1.0时代我提到,在开发时最好将视图的Model定制为强类型的,这样可以充分利用静态检查功能进行排错.不过有人指出,这么做虽然易于静态检查,但是定义强类型的Model类型 ...

  6. MongoDB学习笔记~以匿名对象做为查询参数,方便查询子对象

    回到目录 对于MongoDB的封装还在继续,对于不断追求简单的编程还在继续,对于喜欢代码的那么感觉,还在继续... 当你的mongo数据表里有子对象时,尤其是列表对象时,使用官方的驱动很是不爽,要记得 ...

  7. [译] ASP.NET 生命周期 – ASP.NET 上下文对象(五)

    ASP.NET 上下文对象 ASP.NET 提供了一系列对象用来给当前请求,将要返回到客户端的响应,以及 Web 应用本身提供上下文信息.间接的,这些上下文对象也可以用来回去核心 ASP.NET 框架 ...

  8. 关于ASP控件对象的一些简单操作

    在线人数 Application.Lock(); Application[).ToString(); Application.UnLock(); Label1.Text = Application[& ...

  9. C# 匿名对象(匿名类型)、var、动态类型 dynamic

    本文是要写的下篇<C#反射及优化用法>的前奏,不能算是下一篇文章的基础的基础吧,有兴趣的朋友可以关注一下. 随着C#的发展,该语音内容不断丰富,开发变得更加方便快捷,C# 的锋利尽显无疑. ...

随机推荐

  1. .Net 垃圾回收和大对象处理 内存碎片整理

    CLR垃圾回收器根据所占空间大小划分对象.大对象和小对象的处理方式有很大区别.比如内存碎片整理 —— 在内存中移动大对象的成本是昂贵的,让我们研究一下垃圾回收器是如何处理大对象的,大对象对程序性能有哪 ...

  2. win10如何彻底删除Gis|彻底卸载ArcGis的方法说明

    ArcGIS产品线为用户提供一个可伸缩的,全面的GIS平台.ArcObjects包含了许多的可编程组件,从细粒度的对象(例如单个的几何对象)到粗粒度的对象(例如与现有ArcMap文档交互的地图对象)涉 ...

  3. 技术人生:Knowing when or where it’s appropriate to use a technique or tool is just as important as knowing how to use it.

    Knowing when or where it’s appropriate to use a technique or tool is just as important as knowing ho ...

  4. 无线通信中FEC 编码原理及评价

    转自:http://blog.csdn.net/wiznet2012/article/details/7492146 大家好,前面我们给大家介绍了无线通信中FEC编码原理(1)和(2),今天继续献上F ...

  5. tsung执行时报Can't locate Template.pm的解决

    [root@openfire-x86v-app01 20141118-0931]# tsung_stats creating subdirectory data creating subdirecto ...

  6. 苹果无法连接到itunes store怎么办

    方法1:设置--还原--还原网络设置,再进app store就可以了.方法2:重置访问限制“设置”–> “通用” –> “访问限制”,开启访问限制5秒,然后再关闭访问限制.方法3:重置当前 ...

  7. 黑吃黑第一季/全集Banshee迅雷下载

    第一季 Banshee Season 1 (2013)看点:“Banshee”在爱尔兰盖尔语中被称为“bean sidhe”,意思是“拥有超能力的女人”.不过在鲍尔的新剧中,Banshee并不是指超自 ...

  8. 【.Net】 C#访问修饰符

    一 类的修饰符:  C#中类的默认修饰符是internal.1 private 只有对包.NET中的应用程序或库才能访问.2 public 不限制对类的访问. 3 protected 只可以被本类和其 ...

  9. cat /proc/net/sockstat

    cat /proc/net/sockstat [root@VP-CS-243 ~]# !cat cat /proc/net/sockstat sockets: used 294 TCP: inuse ...

  10. google chrome 删除重复的书签 about sync

    之前 由于 谷歌 同步的不智能,且不询问用户同步方法和细节,导致我的书签包括了大量重复的书签,想去除重复的书签. 由于谷歌书签文件 存储在:C:\Documents and Settings\Admi ...