StaticFieldAttribute.cs 962 B

123456789101112131415161718192021222324252627282930313233343536
  1. using System;
  2. namespace ET
  3. {
  4. /// <summary>
  5. /// 静态字段需加此标签
  6. /// valueToAssign: 初始化时的字段值
  7. /// assignNewTypeInstance: 从默认构造函数初始化
  8. /// </summary>
  9. [AttributeUsage(AttributeTargets.Field)]
  10. public class StaticFieldAttribute: Attribute
  11. {
  12. public readonly object valueToAssign;
  13. public readonly bool assignNewTypeInstance;
  14. public StaticFieldAttribute()
  15. {
  16. this.valueToAssign = null;
  17. this.assignNewTypeInstance = false;
  18. }
  19. public StaticFieldAttribute(object valueToAssign )
  20. {
  21. this.valueToAssign = valueToAssign ;
  22. this.assignNewTypeInstance = false;
  23. }
  24. public StaticFieldAttribute(bool assignNewTypeInstance)
  25. {
  26. this.valueToAssign = null;
  27. this.assignNewTypeInstance = assignNewTypeInstance;
  28. }
  29. }
  30. }