web-dev-qa-db-fra.com

Un seul élément configSections est autorisé par fichier de configuration et, le cas échéant, doit être le premier enfant de l'élément de configuration racine.

Je développe l'application console et lorsque j'exécute le fichier .exe, l'erreur suivante apparaît:

system.Configuration.ConfigurationErrorsException: Seulement un <configSections> élément autorisé par fichier de configuration et, si présent, doit être le premier enfant de la racine <configuration> élément.

Voici mon App.config fichier:

<configuration>
    <startup useLegacyV2RuntimeActivationPolicy="true">
        <supportedRuntime version="v4.0"/>
    </startup>
    <configSections>
        <section name="Reva.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
        <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
    </configSections>
    <!-- ... -->

Cependant, si je supprime la section startup suivante, elle fonctionne correctement

<startup useLegacyV2RuntimeActivationPolicy="true">
    <supportedRuntime version="v4.0"/>
</startup>
86
Mahesh

Le message d'erreur lui-même détaille le correctif correct:

configSections doit être le premier enfant * de l'élément racine:

* emphase ajoutée

Donc déplacez le configSections vers le haut:

<configuration>
    <configSections>
        <section name="Reva.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
        <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
    </configSections>
    <startup useLegacyV2RuntimeActivationPolicy="true">
        <supportedRuntime version="v4.0"/>
    </startup>
</configuration>
208
Daniel Hilgarth

Le fichier d'erreur web.config

 <?xml version="1.0" encoding="utf-8"?>   

<configuration>    
   <connectionStrings>   
      <add name="SQLConnect" 
           connectionString="Data Source=SAHIL; Initial Catalog=Demo; Integrated Security=SSPI" 
           providerName="System.Data.SqlClient" />   
   </connectionStrings>     

   <configSections>   
      <sectionnamesectionname="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, 
          Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" /> 
   </configSections>  

   :   
   :   
   :   
   :   
   :   
   :   
   :   
</configuration> 

L'erreur était

enter image description here

Pour corriger l'erreur, j'ai réorganisé les éléments et l'erreur a été corrigée.

enter image description here

2
MAFAIZ

Je suis conscient que ce doit être le premier élément enfant, et la modification du fichier de configuration élimine le problème. Cependant, le fichier de configuration est généré automatiquement. Ainsi, chaque fois que cela se produit, l'erreur est renvoyée car elle est générée de manière incorrecte ...

2
Brett