How to store key-value pairs in application settings at runtime?

.net, app-config, c#, settings

Solution

After some more searching net, I've found a very good (albeit very long) article which describes in dept the .Net configuration model:

Unraveling the Mysteries of .NET 2.0 Configuration

I also found something very usefull:

Configuration Section Designer

A visual studio adding for visually designing config sections and generating the coresponging XSD files. I hope someone finds this useful.

Problem

How can dynamic Key-value pairs of objects be stored in app.config in using the application settings api, at runtime? I've been trying to get my head around, and I can't find any meaningful example or documentation. I seems that .Net dictionary classes can't be serialized in XML to store them in app.config Is the only way to do it by using custom XML serialized classes, or are there any other ways?

Original source