Я использую атрибут Description в своих перечислениях для предоставления удобного имени в поле перечисления. например.
public enum InstallationType
{
[Description("Forward of Bulk Head")]
FORWARD = 0,
[Description("Rear of Bulk Head")]
REAR = 1,
[Description("Roof Mounted")]
ROOF = 2,
}
И доступ к этому легко с помощью хорошего вспомогательного метода:
public static string GetDescriptionFromEnumValue(Enum value)
{
DescriptionAttribute attribute = value.GetType()
.GetField(value.ToString())
.GetCustomAttributes(typeof(DescriptionAttribute), false)
.SingleOrDefault() as DescriptionAttribute;
return attribute == null ? value.ToString() : attribute.Description;
}
Мне нужно преобразовать это в переносимую библиотеку классов, но у него нет доступа к библиотеке System.ComponentModel. когда я пытаюсь добавить уважение, VS говорит мне, что я уже ссылался на все.
Спасибо