We now have a complete understanding of how to read and write attribute values to and from the directory using any syntax or data type.
We began with a comparison of the collection classes used by both DirectoryEntry and DirectorySearcher for reading attribute values. We then explored the various types of LDAP data types and explained how they are converted to different types by different layers of the system. We also explained how the schema mapping mechanism performs mappings from LDAP data types to ADSI data types as well as the differences between how these types are marshaled by the DirectorySearcher and DirectoryEntry classes.
After that, we dove into the details of reading all of the different types of attribute values. We focused heavily on the more troublesome types, including LargeInteger and security descriptors.
We finished up by describing how to write attribute values and covered the troublesome types again from the writing perspective.
Part I: Fundamentals
Introduction to LDAP and Active Directory
Introduction to .NET Directory Services Programming
Binding and CRUD Operations with DirectoryEntry
Searching with the DirectorySearcher
Advanced LDAP Searches
Reading and Writing LDAP Attributes
Active Directory and ADAM Schema
Security in Directory Services Programming
Introduction to the ActiveDirectory Namespace
Part II: Practical Applications
Part III: Appendixes
Appendix A. Three Approaches to COM Interop with ADSI
Appendix B. LDAP Tools for Programmers
Appendix C. Troubleshooting and Help