Введение в программирование

       

Назначение атрибута


Для того, чтобы назначить атрибут элементу кода, можно:

  • определить новый класс атрибута
  • использовать существующий класс атрибута из библиотеки NET Framework.

Атрибут указывается в квадратных скобках перед элементом, которому он назначается. Назначаемый атрибут инициализируется вызовом конструктора с соответствующими параметрами.

Класс System.ObsoleteAttribute позволяет помечать код и задавать информацию, которая будет отображаться как Warning во время компиляции приложения. Этот класс предназначается для возможности указания некоторого кода модуля как "устаревшего".Для того чтобы использовать существующий класс для назначаемого методу атрибута, следует:

  1. создать метод, использующий атрибут (например, метод, при каждом вызове которого компилятор будет формировать сообщение Warning с указанным в атрибуте кодом);
  2. ввести перед определением метода в квадратных скобках имя класса атрибута (например, класса ObsoleteAttribute).

Например:

[ObsoleteAttribute ("Сообщение, отображаемое компилятором как Warning")] public static void M1( ) {return ; // Компилятор будет выдавать предупреждение при // каждом вызове данного метода, которому назначен // соответствующий атрибут. Например: // c:\c#_project\pr1\class1.cs(23,4): warning // CS0618: 'pr1.Class1.M1()' is obsolete: // 'Сообщение, отображаемое компилятором как // Warning' }

Язык С# при назначении атрибута позволяет не указывать суффикс Attribute. Так, вместо [ObsoleteAttribute("")] можно записать [Obsolete("")].

Класс атрибута должен иметь хотя бы один public-конструктор.



Содержание раздела