protected override void InternalLoad(System.Collections.Generic.Dictionary <string, object> databaseProperties) { //Generates 0x80030005 (STG_E_ACCESSDENIED) exception if Access project is not connected to a sql database Access.AccessObjectProperties properties = App.Application.CurrentProject.Properties; PropertyCollectionAccessObject propertyCollection = new PropertyCollectionAccessObject(properties); foreach (KeyValuePair <string, object> item in databaseProperties) { propertyCollection.AddProperty(item.Key, item.Value); } }
protected override void ClearProperties() { Access.AccessObjectProperties properties = App.Application.CurrentProject.Properties; foreach (Access.AccessObjectProperty property in properties) { try { //If we delete AccessVersion property the database will be Access 2000 format if (property.Name != "AccessVersion") { properties.Remove(property); } } catch { //Ignore any exception } } }
/// <summary> /// Ctor /// </summary> /// <param name="properties">Properties collection to manage</param> public PropertyCollectionAccessObject(MSAccess.AccessObjectProperties properties) { Properties = properties; }