You can do one of the following things:
1) you can extend the normal UserPrincipal class to include additional elements that you often need. In fact, this would be the cleanest solution. See MSDN docs for extending a user principal, or answer this SO question for an example of how to extend a UserPrincipal class with additional properties
2) You could just "go down" into the depths of your base DirectoryEntry and grab the data from there:
DirectoryEntry de = YourUserPrincipal.GetUnderlyingObject() as DirectoryEntry; if(de != null) { var initials = de.Properties["initials"]; if(initials != null && initials.Count > 0) { string theInitials = de.Properties["initials"][0].ToString(); } }
source share