object GetHandler(string sectionName) { lock (factories) { object o = factories [sectionName]; if (o == null || o == removedMark) { if (parent != null) { return(parent.GetHandler(sectionName)); } return(null); } if (o is IConfigurationSectionHandler) { return((IConfigurationSectionHandler)o); } o = CreateNewHandler(sectionName, (SectionData)o); factories [sectionName] = o; return(o); } }