Подтвердить что ты не робот

Как сделать атрибут .NET действительным только для определенных типов

Возможный дубликат:
Укажите необходимый базовый класс для целевых атрибутов .NET

Я хочу указать, что мой пользовательский атрибут действителен только для определенных типов (на основе интерфейса или базового класса).
Вот так:

attributes

Как я могу это сделать?

4b9b3361

Ответ 1

Похоже, вы хотите создать Attribute, который может применяться только к определенным типам таким образом, что AttributeUsage может применяться только к типам, происходящим из Attribute. Введение такого типа пользовательского ограничения просто невозможно. Особая ошибка, которую вы видите, происходит не из-за пользовательского ограничения, это простое подключение к самому компилятору.

Ответ 2

Я не думаю, что вы можете, вы можете указать только, на каком элементе языка этот атрибут действителен. AttributeUsageAttribute является особым случаем, поскольку компилятор знает об этом и не позволяет вам применять его к чему-то, что не является атрибутом