Поиск типа по его атрибуту - C#
Формулировка задачи:
Есть класс:
Как видно, у вложенного типа MessageType есть кастомный атрибут MessageBoardEnumLabel (наследуется от System.Attribute). Суть: в совершенно другом классе нужно получить тип этого перечисления, зная только атрибут. Пробовал использовать рефлексию, но гугла/мсдна/рук оказалось недостаточно. Очень рассчитываю на вашу помощь, заранее спасибо.
public class MessageBoard { [MessageBoardEnumLabel] public enum MessageType { ConnectedToServer, DisconnectedFromServer, // ... } // ... }
Решение задачи: «Поиск типа по его атрибуту»
textual
Листинг программы
var assembly = Assembly.GetExecutingAssembly(); var types = assembly.GetTypes(); var enumType = types.FirstOrDefault( t => t.CustomAttributes.Any(a => a.AttributeType == typeof (MessageBoardEnumLabelAttribute)));
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д