Задать вопрос

Как с помощью атрибутов применить метод ко всем другим методам класса на C#?

Я хочу реализовать проверку(авторизацию и другие вычисления) для всех методов класса.
То-есть при выполнении каждого метода класса я хочу сперва выполнять определённую проверку, и если она пройдена, то выполнять дальше метод.
Фактически перед каждым методом класса написать выполнение метода проверки.
Можно ли это реализовать с помощью атрибутов или абстрактных классов, или наследования, что б не писать каждый раз выполнение метода проверки, а создать определённую структуру?
  • Вопрос задан
  • 664 просмотра
Подписаться 3 Средний Комментировать
Пригласить эксперта
Ответы на вопрос 3
EreminD
@EreminD
Кое-что умею
Если про asp.net говорим, то есть на эту тему специальный аттрибут
Ответ написан
@kttotto
пофиг на чем писать
c# custom attribute example

Ну если и это не поможет, то есть класс Attribute, от которого надо отнаследоваться и сделать свою реализацию.
public class MyCustomAttribute: Attribute
{
    public string SomeProperty { get; set; }
}

Затем использовать
[MyCustom(SomeProperty = "foo bar")]
public class Foo
{

}
Ответ написан
Комментировать
Exomode
@Exomode
Архитектор ПО
Корректнее делать такое через делегирование или оверрайдинг, атрибуты нужны в первую очередь для работы с метаданными типов, реализовывать с их помощью не-абстрактную бизнес-логику (как я понял, как раз то что вы хотите) не самый лучший подход.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы