当前位置: 代码迷 >> 综合 >> Attribute标记(2)——自定义Attribute
  详细解决方案

Attribute标记(2)——自定义Attribute

热度:100   发布时间:2023-10-01 18:50:06.0

1、Attribute都从System. Attribute类继承,类名一般以Attribute结尾。

2、创建构造函数。

3、标记类的用途—AttributeUsage标记(标记的标记):AttributeTargets:可以添加到哪些成员上。AllowMultiple:是否允许在一个成员上标记这个Attribute的多个实例,默认false。标注在Attribute类的类名上方。

4、Attribute只是给类、成员做标记,本身没有什么意义,不会发生任何动作,就像小偷踩点在门上做标记(StealableAttribute)一样,具体这个标记会起到什么作用是由使用这个类、成员的代码决定的。

5、代码示例:

 [AttributeUsage(AttributeTargets.Property)]public class ValidatorAttribute : Attribute{public ValidatorType ValidatorType { get; set; }public ValidatorAttribute(ValidatorType validatorType){this.ValidatorType = validatorType;}}public enum ValidatorType{Email,PostCode}class Person{public string Name { get; set; }[Validator(ValidatorType.Email)]public string Email { get; set; }[Validator(ValidatorType.PostCode)]public string PostCode { get; set; }}

 

  相关解决方案