To properly answer your question we would probably need to see some code from you custom section handler.
However, one point that immediately springs to mind, is that you might not be correctly using the parent
argument that is being passed into your handler.
Just to get our terminoligy on the same page, I will refer to the 'Create' method which is your implementation of the IConfigurationSectionHandler.Create
, and a configuration object
which is the object that you return from the 'Create' method.
Very simplistically, your section handlers Create
method should be invoked for each occurance of your custom section in the hierarchy of web.config files. With each invocation, previous configuration object that you returned from Create
is passed into the next call as the parent
argument, of course the first call will have a null
parent which indicates that you need to create this initial 'configuration object', subsequent calls should not create a new configuration objec
t but add to or modify the one passed in as the parent.
The end result is that when you read the configuration from the file you receive a 'configruation object' that contains the sum of the settings from all levels.
NB: You should really be using ConfigurationSection, since IConfigurationSectionHandler has been deprecated since Framework 2.0. Here is a link to using this class.
http://msdn.microsoft.com/en-us/library/2tw134k3.aspx