title: Configuration file dataConfiguration.config does not have root <configuration> tag
body: <p>I am having some issues using Enterprise Library to share configuration information across several files. I have three configuration files (app.config, dataConfiguration.config, and exceptionHandlingConfiguration.config). I am working with Enterprise library 5.0 and Visual Studio 2012, on a Windows 7 machine in .NET 4.0 framework.</p>
  
  <p>In App.config, I have the following </p>
  
  <pre><code>&lt;configuration&gt;
    &lt;configSections&gt;
      &lt;section name="enterpriseLibrary.ConfigurationSource" type="Microsoft.Practices.EnterpriseLibrary.Common.Configuration.ConfigurationSourceSection, Microsoft.Practices.EnterpriseLibrary.Common, Version=5.0.414.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" /&gt;
      &lt;section name="dataConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings, Microsoft.Practices.EnterpriseLibrary.Data, Version=5.0.414.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" /&gt;
      &lt;section name="exceptionHandling" type="Microsoft.Practices.EnterpriseLibrary.Common.Configuration.FileConfigurationSource, Microsoft.Practices.EnterpriseLibrary.Common, Version=5.0.414.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/&gt;
  
      &lt;/sectionGroup&gt;
  
    &lt;/configSections&gt;
      &lt;appSettings&gt; 
      &lt;/appSettings&gt;
      &lt;enterpriseLibrary.ConfigurationSource selectedSource="SysConfig"&gt;
          &lt;sources&gt;
              &lt;add name="SysConfig" type="Microsoft.Practices.EnterpriseLibrary.Common.Configuration.SystemConfigurationSource, Microsoft.Practices.EnterpriseLibrary.Common, Version=5.0.414.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
                   /&gt;
              &lt;add name="DataConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Common.Configuration.FileConfigurationSource, Microsoft.Practices.EnterpriseLibrary.Common, Version=5.0.414.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
                  filePath="dataConfiguration.config" /&gt;
              &lt;add name="ExceptionHandling" type="Microsoft.Practices.EnterpriseLibrary.Common.Configuration.FileConfigurationSource, Microsoft.Practices.EnterpriseLibrary.Common, Version=5.0.414.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
                  filePath="exceptionHandlingConfiguration.config" /&gt;
          &lt;/sources&gt;
          &lt;redirectSections&gt;
              &lt;add sourceName="DataConfiguration" name="dataConfiguration" /&gt;
              &lt;add sourceName="ExceptionHandling" name="exceptionHandling" /&gt;
          &lt;/redirectSections&gt;
      &lt;/enterpriseLibrary.ConfigurationSource&gt;
  &lt;/configuration&gt;
  </code></pre>
  
  <p>exceptionHandlingConfiguration.config contains </p>
  
  <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt; 
  &lt;configuration&gt;
    &lt;exceptionHandling&gt;
      &lt;exceptionPolicies&gt;
        &lt;add name="Policy"&gt;
          &lt;exceptionTypes&gt;
            &lt;add name="All Exceptions" type="System.Exception, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
                postHandlingAction="NotifyRethrow" /&gt;
          &lt;/exceptionTypes&gt;
        &lt;/add&gt;
      &lt;/exceptionPolicies&gt;
    &lt;/exceptionHandling&gt;
    &lt;validation /&gt;
    &lt;policyInjection&gt;
      &lt;policies&gt;
        &lt;add name="Application Policy"&gt;
          &lt;handlers&gt;
             &lt;add type="Microsoft.Practices.EnterpriseLibrary.Validation.PolicyInjection.ValidationCallHandler, Microsoft.Practices.EnterpriseLibrary.Validation, Version=5.0.414.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
                specificationSource="Both" name="Validation Call Handler" /&gt; 
  
          &lt;/handlers&gt;
        &lt;/add&gt;
        &lt;add name="Global Policy"&gt;
          &lt;handlers&gt;
            &lt;add type="Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.PolicyInjection.ExceptionCallHandler, Microsoft.Practices.EnterpriseLibrary.ExceptionHandling, Version=5.0.414.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
                exceptionPolicyName="Policy" name="Exception Handling Call Handler" /&gt; 
  
          &lt;/handlers&gt;
        &lt;/add&gt;
      &lt;/policies&gt;
    &lt;/policyInjection&gt;
  &lt;/configuration&gt;
  </code></pre>
  
  <p>While dataConfiguration.config contains </p>
  
  <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;
  &lt;configuration&gt;
    &lt;configSections&gt;
        &lt;section name="dataConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings, Microsoft.Practices.EnterpriseLibrary.Data, Version=5.0.414.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" /&gt;
      &lt;/configSections&gt;
    &lt;dataConfiguration defaultDatabase="JDBDatabase" /&gt;
      &lt;connectionStrings&gt;
          &lt;add name="JDBDatabase" connectionString="TestBookDB; server=Mononobe1423; Integrated Security=true;"
              providerName="System.Data.SqlClient" /&gt; 
      &lt;/connectionStrings&gt;
  &lt;/configuration&gt;
  </code></pre>
  
  <p>Problem I have is when I run my code, I get the error message </p>
  
  <p><strong>Configuration file dataConfiguration.config does not have root  tag</strong></p>
  
  <p>As you can see above, all three files contain the configuration tag. So I am lost as to what the error is and why I am unable to access the section objects defined in the other files using either of </p>
  
  <pre><code>var execonfig = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
  var db = execonfig.ConnectionStrings.ConnectionStrings["JDBDatabase"];
  </code></pre>
  
  <p>or </p>
  
  <pre><code>IConfigurationSource configSource = ConfigurationSourceFactory.Create();
  var db =  configSource.GetSection(DatabaseSettings.SectionName);
  </code></pre>
  
  <p>Anyone know what I have wrong? </p>