Программирование >>  Программирование с использованием ajax 

1 ... 311 312 313 [ 314 ] 315 316 317 ... 396


ЧАСТЬ

Дополнительные технологии

В этой ЧАСТИ...

Глава 30. Атрибуты

Глава 31. XML-документация

Глава 32. Передача данных по сети

Глава 33. Введение в GDI+

Глава 34. Windows Presentation Foundation

Глава 35. Windows Communication Foundation

Глава 36. Windows Workflow Foundation




Атрибуты

Эта глава посвящена атрибутам, и в ней описано, что они собой представляют и для чего их можно использовать. Глава содержит также несколько примеров, демонстрирующих применение нескольких атрибутов, доступных в .NET Framework. Пользовательские атрибуты - атрибуты, которые можно создавать самостоятельно для расширения возможностей системы - также нашли свое отражение, как и несколько работающих примеров. Вы узнаете также, как использовать дизассемблер промежуточного языка (Intermediate Language Disassembler (lldasm)) для выяснения атрибутов существующих сборок.

Атрибуты - одно из наиболее полезных свойств каркаса .NET Framework, и Microsoft часто их применяет. Чтобы эффективно их использовать, придется затратить значительное время, но результат окупает затраченные усилия. В частности, в этой главе будут рассматриваться следующие темы.

□ Использовать атрибуты для определения фрагментов кода, которые входят только в отладочные сборки.

□ Использовать атрибуты для определения информации о сборке, такой как информация об авторских правах.

□ Использовать атрибуты для пометки фрагментов кода как устаревших, чтобы со временем сборки можно было усовершенствовать.

□ Создавать собственные атрибуты и использовать их для отслеживания хронологии изменений.

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



Что такое атрибут

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

Практическое заняти ИСПОЛЬЗОВЭНИе ЭТрибуТОВ СборкИ

При создании проекта .NET программа Visual Studio добавляет в него файл Assemblyinf о. CS. Рассмотрим этот файл. Создайте новое Windows-приложение AttributePeek в папке C:\BegVCSharp\Chapter30 и откройте проводник решений. Разверните узел Properties (Свойства), как показано на рис. 30.1.

Sokibon Ejpterw - Seluhon Ш Altribot.

Solution 01 AttributePee* (1 project) .3 01 AttributcPrck w Propertie-.

Attemb>ylnfo cs I Ф Reiources re-x Ф J Settings senmgs Rrfetences ♦, Forml.c$ Program.cs

Pitc, 30.1. Развернутый узел Properties

Дважды щелкните на файле Assemblyinf о. cs, чтобы увидеть код, сгенерированный Visual Studio. Часть этого кода имеет следующий вид:

using System.Reflection;

using System.Runtime.CompilerServices;

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

[assembly: AssemblyTitle( AttributePeek )] [assembly: AssemblyDescription ( )] [assembly: AssemblyConfiguration ( )] [assembly: AssemblyCompany( MorganSkinner.com )] [assembly: AssemblyProduct( AttributePeek )]

[assembly: AssemblyCopyright( Copyright Morgan Skinner 2008 )] [assembly: AssemblyTrademark( )J [assembly: AssemblyCulture( )]

Данный файл содержит ряд строк, начинающихся с [assembly: - это определения атрибутов. При компиляции файла любые определенные атрибуты сохраняются в результирующей сборке - этот процесс называют декапированием (pickling). Чтобы увидеть его в действии, измените один из приведенных выше атрибутов - например, атрибут AssemblyTitle и скомпилируйте сборку:

[assembly: AssemblyTitle( AttributePeek - by ME )]



1 ... 311 312 313 [ 314 ] 315 316 317 ... 396

© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика