博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C#特性 学习笔记(对象初始化器 匿名类型 扩展方法)
阅读量:5094 次
发布时间:2019-06-13

本文共 1017 字,大约阅读时间需要 3 分钟。

对象初始化器

Book book = new Book { Title="Inside COM",ISBN="123-456-789"};

集合初始化器 

IList
books = new List
{ new Book { Title = "Inside COM", ISBN = "123-456-789",Price=20 }, new Book { Title = "Inside C#", ISBN = "123-356-d89",Price=100 }, new Book { Title = "Linq", ISBN = "123-d56-d89", Price = 120 }};

 

匿名类型

在C#里有这样一些类型,它是作为临时储存数据的,生命周期只在这个方法内,方法结束了,这个类型的生命周期也没有了。那么这里我们就可以使用一个匿名类型。

扩展方法:

1 方法所在的类必须是静态的

2 方法也必须是静态的

3 方法的第一个参数必须是你要扩展的那个类型,比如你要给int扩展一个方法,那么第一个参数就必须是int。

4 在第一个参数前面还需要有一个this关键字。

按照上面的步骤写你就得到了一个“扩展方法”,你可以像调用这个类的原生方法那样去调用它:

实例 :

public static class PropertyExtension{        public static object GetValueByName(this object self, string propertyName)        {            if (self == null)            {                return self ;            }            Type t = self.GetType();            PropertyInfo p = t.GetProperty(propertyName);            return p.GetValue(self, null);        }}

 

转载于:https://www.cnblogs.com/wayne798/archive/2012/04/09/2438940.html

你可能感兴趣的文章
Centos7安装FTP突然无法登录
查看>>
leetcode: Search in Rotated Sorted Array
查看>>
BOM嵌套简单写法
查看>>
Microsoft Office Access数据库或项目包含一个对文件“dao360.dll”版本5.0.的丢失的或损坏的引用。...
查看>>
电商购物程序(续1)。
查看>>
C#备份和还原sql server数据库
查看>>
统计同成绩的学生人数
查看>>
[转]caffe的配置过程
查看>>
宏定义 #define
查看>>
android中图标重叠的实现 (转载)
查看>>
nginx+tomat https ssl 部署 完美解决方案
查看>>
js动画之简单运动二
查看>>
数学情书
查看>>
Linux mint
查看>>
设计模式 ( 十三 ) 命令模式Command(对象行为型)
查看>>
鼠标滚动:mousewheel事件在Firefox采用DOMMouseScroll事件的统一处理
查看>>
笔记:常用排序算法
查看>>
二叉树
查看>>
Windows Server 2008 配置 PHP 环境
查看>>
ASP.NET AJAX(Atlas)现存的一些常见问题以及解决方案[持续更新]
查看>>