#West Wind Application Configuration Change Log
Oct. 14th, 2014
-
ConfigurationFile Configuration Provider support for Complex Types
Added another option for serialization of flat complex objects, by implementing additional checks for a static FromString() method that if found can be used to deserialize object. more info -
ConfigurationFile Configuration Provider support for IList
You can now also serialize IList objects into the config file. The list is serialize a ItemList1,ItemList2,ItemList3 where ItemList is the name of the property. Complex objects are supported with the new complex type parsing support or TypeConverters. more info -
Support for nested Configuration Property Encryption
You can now specify nested properties in child objects to be encrypted in all providers by using simple '.' syntax in the PropertiesToEncrypt property of the provider (ie.PropertiesToEncrypt="Password,License.LicenseKey")
.
June. 13th, 2014
-
JSON File Provider added
You can now store configuration optionally using JSON. The new JsonFileConfigurationProvider uses JSON.NET to provide JSON configuration output. JSON.NET is dynamically linked so there's no hard dependency on it. If you use this provider make sure JSON.NET is added to your project. -
Updated Documentation Added this changelog as well as updating the detailed help file documentation step by step instructions.
###Version 2.15 Nov. 14th, 2013
-
Make XML Config File Reader read-only
Changed the config file reader to open files in read-only mode to minimze multi-user/thread access issues while writing configuration in case other threads want to access the data. Thanks to Patrick Wyatt. -
Fix XmlConfig Encryption Error
Fixed small bug that failed to decrypt encoded properties after writing out XmlFile properties to disk. Thanks to Patrick Wyatt. -
Several minor bug fixes
Fix issue configuration file issue in one of the AutoConfig file tests. Fix a small, config section reader issue. -
Fixed documentation
Accidentally left outdated V1 documentation on the detailed developer documentation site. Fixed.
###Version 2.10 August 25th, 2013
-
License Change - drop commercial License Requirement
We've dropped the requirement for a commercial license for this tool and are using a pure MIT license, with an optional commercial license available for those that want official support, require a commercial license in their organization or simply want to support this project. -
Documentation Updates
The documentation both on GitHub and in the online/chm help files have been updated significantly to provide a host more examples. -
Minor Bug fixes
Fixed a number of small issues with the configuration file and Sql providers. See GitHub commit history for more info.
###Version 2.00 January 14th, 2013
-
Simplified Instantiation Management
Changed the way the class initializes by explicitly requiring a call to Initialize() after instantiation. This removes any requirements to implement specific subclass methods on the configuration class making it much simpler to get started. -
Easier Customization of default Configuration Provider
If you need to customize the default configuration store for your configuration class you can now simply override the new <>OnCreateDefaultProvider()<> method. This method can create an instance of a provider and customize it as needed and simply return it. There's also a new OnInitialize() method which can take over the entire initial provider load and read process under your full control. -
Improved Auto-Creation Logic
Configuration stores are now automatically created if they don't exist yet - assuming the calling application has rights to write the file/store. On first read AppConfiguration checks if the store exists and if it doesn't tries to create it. If the store does exist, but keys are missing the keys are added and written to the store. -
Added additional Unit Tests
Added a host of new unit tests to demonstrate Configuration class implementations for each configuration provider type and usage examples. Updated existing examples to the new initialization syntax.