У меня есть атрибут, который можно назвать SomeAttribute, и класс, который мне нужен, чтобы убедиться, что классу передан тип, имеющий SomeAttribute. Вот как я это делаю сейчас:
public class Test()
{
public Test(SomeType obj)
{
if(!obj.GetType().IsDefined(typeof(SomeAttribute), false))
{
throw new ArgumentException("Errormessage");
}
}
}
Но это означает, что я не получаю никаких ошибок во время компиляции, но где-то во время выполнения, если у obj нет атрибута. Есть ли способ указать в объявлении метода, что параметр должен иметь некоторый атрибут? Так что я получаю ошибки, я компилирую время при использовании неправильных параметров, или я должен использовать пустой интерфейс?