1
1

EnumDescriptionAttribute.cs 818 B

12345678910111213141516171819202122232425
  1. using System;
  2. using System.ComponentModel;
  3. [AttributeUsage(AttributeTargets.Field, AllowMultiple = true)]
  4. public class EnumDescriptionAttribute : DescriptionAttribute
  5. {
  6. public EnumDescriptionAttribute(string description)
  7. {
  8. DescriptionValue = description ?? throw new ArgumentNullException(nameof(description));
  9. }
  10. public EnumDescriptionAttribute(string description, string display) : this(description)
  11. {
  12. Display = display ?? throw new ArgumentNullException(nameof(display));
  13. }
  14. public EnumDescriptionAttribute(string description, string display, string language) : this(description, display)
  15. {
  16. Language = language ?? throw new ArgumentNullException(nameof(language));
  17. }
  18. public string Display { get; set; }
  19. public string Language { get; set; }
  20. }