This chapter introduces the subject of attributes, describing what they are and what they can be used for. Also included are examples demonstrating several of the attributes available with the .NET Framework. Custom attributes—attributes you can write yourself to extend the system—are covered as well, along with several working examples. You'll also learn how the Intermediate Language Disassembler (
Ildasm) can be used to discover the attributes of existing assemblies.
Attributes are one of the most useful features of the .NET Framework, and they are used frequently by Microsoft. To use them effectively, you need to make a significant investment of time, but it is worth the effort. In this chapter, you'll learn how to do the following:
Use attributes to define sections of code that are only included in Debug builds.
Use attributes to define information about an assembly, such as copyright information.
Use attributes to mark sections of code as obsolete, so that over time you can revise your assemblies.
Create your own attributes and use these to maintain a change history.
The final section of this chapter describes in detail how to write your own attributes that extend the system, and it provides a working example of a custom attribute that can be used to maintain change history of your code. By the end of the chapter, you should have enough knowledge of attributes to apply these to your own projects.
It's difficult to define an attribute in a ...