目录
1.特性是什么?
特性是一种允许我们向程序的程序集添加元数据的语言结构,它是用于保存程序结构信息的某种特殊类型的类。
特性提供功能强大的方法以将声明信息与C#代码(类型,方法,属性等)相关联。特性与程序实体关联后,即可在运行时使用反射查询特性信息。
特性的目的是告诉编译器把程序结构的某组元数据嵌入到程序集中,它可以放置在几乎所有的声明中(类,变量,函数等等声明)
简单的说:特性的本质就是一个类,我们可以利用特性类为元数据添加额外信息,比如一个类,成员变量,成员方法等等为他们添加更多的额外信息,之后可以通过反射来获取这些额外信息。
2.自定义特性
继承特性基类Attribute
3.特性的使用
4.限制自定义特性的使用范围
5.系统自带特性——过时特性
6.系统自带特性——调用者信息特性
7.系统自带特性——条件编译特性
结合预处理器命令使用
条件编译特性:Conditional
它会和预处理指令#define配合使用,需要引用命名空间:using System.Diagnostics;
主要可以用在一些调试代码,有时想执行有时不想执行的代码。
此时不会执行,加上#define就会执行该函数
此时函数Fun执行。
8.系统自带特性——外部Dll包函数特性
DllImport