Skip to content

4.6.0 RTM

Choose a tag to compare

@lorenzobruni lorenzobruni released this 27 Jul 21:01
· 49 commits to master since this release

[ENHANCEMENT] Add script to create default database #14

[ENHANCEMENT] Change default IsolationLevel in ADO.StartTransaction #13

Consider setting the Is Read Committed Snapshot On to TRUE in the SQL Server Database options and use the default parameter in the API.ADO.StartTransaction() method to achieve better database performance.

[ENHANCEMENT] Extend Active Directory to return Manager property #10

  • Add the API_AD_CUSTOM_PROPERTIES key in all Web.config files and set your custom properties comas separated i.e. "Manager, Other"
<!-- Active Directory - Custom Properties (comas separated, case sensitive) -->
<add key="API_AD_CUSTOM_PROPERTIES" value="" />
  • Follow the next step only if you wish to implement your custom AD (Active Directory) properties
  • Implement your extended UserPrincipal query filter using the following template per each property you wish to add (i.e. Sample):
    [DirectoryRdnPrefix("CN")]
    [DirectoryObjectClass("Person")]
    public partial class UserPrincipalExtended : UserPrincipal
    {
        public UserPrincipalExtended(PrincipalContext context) : base(context) { }

        
        // Create the "Sample" property.    
        [DirectoryProperty("sample")]
        public string Sample
        {
            get
            {
                if (ExtensionGet("sample").Length != 1)
                    return string.Empty;

                return (string)ExtensionGet("sample")[0];
            }
            set { ExtensionSet("sample", value); }
        }
    }
  • Just pass your type UserPrincipalExtended to the API.ActiveDirectory.Search() or API.ActiveDirectory.List(). If no type is passed, the default UserPrincipal type is used:
var userDetails = API.ActiveDirectory.Search<UserPrincipalExtended>("xxxxxxxx");
var allDirectory = API.ActiveDirectory.List<UserPrincipalExtended>();