//////////////////////////////////////////////////////////// // Public properties public override void Initialize(string name, NameValueCollection config) { if (name == null || name.Length < 1) { name = "AccessProfileProvider"; } if (string.IsNullOrEmpty(config["description"])) { config.Remove("description"); config.Add("description", "$safeprojectname$ Profile Provider"); } base.Initialize(name, config); if (config == null) { throw new ArgumentNullException("config"); } _DatabaseFileName = config["connectionStringName"]; if (_DatabaseFileName == null || _DatabaseFileName.Length < 1) { throw new ProviderException("Connection name not specified"); } string temp = AccessConnectionHolder.GetFileNameFromConnectionName(_DatabaseFileName, true); if (temp == null || temp.Length < 1) { throw new ProviderException("Connection string not found" + _DatabaseFileName); } _DatabaseFileName = temp; //HandlerBase.CheckAndReadRegistryValue(ref _DatabaseFileName, true); AccessConnectionHolder.CheckConnectionString(_DatabaseFileName); _AppName = config["applicationName"]; if (string.IsNullOrEmpty(_AppName)) { _AppName = SecUtility.GetDefaultAppName(); } if (_AppName.Length > 255) { throw new ProviderException("ApplicationName exceeded max length of " + 255); } //_Description = config["description"]; config.Remove("connectionStringName"); config.Remove("applicationName"); config.Remove("description"); if (config.Count > 0) { string attribUnrecognized = config.GetKey(0); if (!String.IsNullOrEmpty(attribUnrecognized)) { throw new ProviderException("Unrecognized attribute: " + attribUnrecognized); } } }