Unless you've been hiding in a cave in recent years, you've undoubtedly heard of Microsoft's latest initiative, called .NET. At a low level, .NET is the basis for a new programming platform, including a completely new set of APIs to manage Microsoft-based products and develop Windows applications. Microsoft even released a new programming language in conjunction with .NET called C# (C-sharp). At a higher level, Microsoft has morphed the concept of .NET to the point where it is hard to define its true boundaries. Here is the definition provided on Microsoft's website: "Microsoft .NET is a set of software technologies designed to connect your world of information, people, systems, and devices."
As far as Active Directory goes, the impact of .NET has been pretty minimal so far. Windows Server 2003 Active Directory was an evolutionary step, not revolutionary. Perhaps the biggest .NET-influenced change is with the new APIs called System.DirectoryServices that were developed for Active Directory. In this chapter, we will discuss the System.DirectoryServices interfaces and cover numerous examples for how they can be used to query and manipulate data in Active Directory. Before getting into that, we first need to talk a bit about the .NET Framework.