* При перепечатке материалов ссылка на www.SeoLiga.ru обязательна!
Настройка трассировочных переключателей
8 февраля 2009
Трассировочные переключатели разрешено включать и отключать в компилирован- ном приложении через его конфигурационный файл — файл с расширением .config в формате XML, в котором хранится необходимая приложению информация. Кон- фигурационный файл располагается в одном каталоге с исполняемым файлом, а формат его имени — (имя_приложения).е\£.сопи£. Конфигурационные файлы есть не у всех приложений; если у вашего приложения, использующего трассировочные переключатели, такого файла нет, его необходимо создать. При исполнении кода, создающего трассировочный переключатель, приложение проверяет наличие в .config-файле сведений об этом переключателе, для каждого переключателя про- верка производится однократно. Чтобы изменить параметры трассировочного пе- реключателя после его создания, необходимо остановить приложение, внести соот- ветствующие изменения в .config-файл и запустить приложение снова, При создании трассировочного переключателя следует предоставить параметр DisplayName, который определяет имя переключателя в конфигурационном файле. При редактировании .config-файла следует указать имя переключателя и целочис- ленное значение, которое необходимо ему присвоить.
Для объектов типа Boolean- Switch значение 0 деактивирует переключатель, а любые значения, отличные от нуля, активируют его. Для объектов TraceSwitch значения О, 1, 2, 3 и 4 представляют соответствен но уровни Trace Level. Off, Trace Level. Error, TraceLevel.Warning, TraceLevel. Info и TraceLevel. Verbose, любые значения больше 4 приравниваются к TraceLevel. Verbose. Чтобы конечный пользователь смог при необходимости настроить трассировку программы, необходимо включить в .config-файл подробные комментарии с описа- нием назначения трассировочных переключателей. Чтобы создать конфигурационный файл и настроить трассировочные переклю- чатели, выполните следующие действия. 1. Создайте в программе объекты переключателей с соответствующими значения- ми свойства DisplayName. 1. Если у вашего приложения нет .config-файла, создайте его. Для этого: • Visual Basic .NET. Выберите в меню команду Project\Add New Item. В диало- говом окне Add New Item выберите шаблон Application Configuration File - откроется заготовка конфигурационного файла; • Visual C#. Выберите в меню команду Project\Add New Item. В диалоговом окне Add New Item выберите Text File, назовите новый файл арр. config — откроет- ся окно текстового редактора, где нужно ввести следующий XML-код: <?xml version-""!. О" encoding="Windows-1252"?> <configjration> </configuration> 3. Между тэгами <configuration и </configuration> добавьте XML-код, объявляю- щий трассировочные переключатели и присваивающий им значения. Вот при- мер XML-кода для переключателей с именами myBooleanSwitcH и ту Trace Switch: <system.diagnostics> <switches> <add name="myBooleariSwitch" value="0" /> <add name="rnyTraceSwitch" value="3" /> </switches> </system.diagnostics> В этом примере значение myBooleanSwitch установлено в off, а значение туТгасе- Switch — в Trace Level. Info. 4. Чтобы включить или выключить любой из переключателей, измените его значе- ние. Например, для активизации переключателя myBooleanSwitch внесите в со- ответствующий элемент XML следующие изменения: <add narre="myBooleanSwitch" value="1" /> Оставшийся XML-код оставьте без изменений. 5. При необходимости снабдите файл комментариями, описывающими назначе- ние всех переключателей и значения их уровней. Это поможет пользователям понять, как работать с вашим приложением. Вот пример конфигурационного файла: <system.diagnostics> <switches> <!- Это глобальный переключатель, активирующий трассировку, Чтобы включить трассировку, установите для него значение, отличное от нуля. Чтобы отключить трассировку, установите значение ноль -> <add name="myBooleanSwitch" value="0" /> <!- Этот переключатель управляет уровнем трассировочных данных, Если трассировочные сведения не нужны, установите для него значение ноль. Значения 1,2,3 и 4 определяют вывод кратких, стандартных, подробных и развернутых сообщений соответственно -> <add name="myTraceSwitcn" value="3" /> </switches> </system.diagnostics>