特性Attribute

1 特性attribute,和注释有什么区别
特性可以影响编译
特性可以影响运行

 

  这种会有警告,但不影响编译。

 

 也可以强制控制,影响编译。

2.声明和使用attribute

特性就是在不影响类型封装的前提下,额外的添加一些信息,以及额外的判断
如果你用这个信息,那特性就有用,
如果你不管这个信息,那特性就没用

 

 

特性可以传参,可以定义属性,也可以定义方法

a.比如,在对定义表的实体类时。我们经常会增加一个字段,用来描述表的名称。

 我们就可以用特性,通过反射获取表的名称,让实体Model与表字段完全保证一致。

*定义特性

 

 *反射方法

 

*使用特性

 

 

 

 

 b.我们也经常会用枚举用来定义订单的状态,但是界面展示又需要展示中文,导致代码需要增加if else 或者switch case 用来转换。

 

 

 

 

 

 c.我们在数据库时候会有一些的字段以及数值最大值最小值设置。往往我们传了一个实体model,由于字段超长或者不匹配字段大小限制而插入数据库异常。

则可以在保存前对实体model进行判断。

 

 

 

 

 

 特性在MVC的过滤器的身份验证,全局异常捕获,Action;WCF的方法;序列化都有运用。

posted @ 2020-03-02 22:22  安以痕_陈  阅读(138)  评论(0编辑  收藏  举报