I am serializing a class and I get the following exception:
You must implement a default accessor on System.Configuration.SettingsPropertyCollection because it inherits from ICollection.
when the following line is executed:
XmlSerializer xs = new XmlSerializer(typeof(CustomConfiguration));
Any help?
public class CustomConfiguration : ConfigurationObjectBase
{
public CustomConfiguration () { //DO NOTHING. }
[User]
public uint Version
{ get { return ((uint)(this["Version"])); }
set { this["Version"] = value; }
}
}
ConfigurationObjectBase is derived from System.configuration.ApplicationSettingsBase.
“default accessor” is the special property that returns an object of the collection based on
its index. for example:
Therefore unavailable to implement that in existing third-party class. Using xml serializing for ApplicationSettings is very bad idea, use Save(), Reload() and Reset() methods, or use your own not derived from ApplicationSettingsBase CustomConfiguration classes.