c# - sección - las secciones sólo deben aparecer una vez en cada archivo de configuración
Aplicación de consola: solo se permite un elemento<configSections> por archivo de configuración y, si está presente, debe ser el primer elemento secundario del elemento raíz<configuration> (3)
Estoy desarrollando la aplicación de la consola y cuando ejecuto el archivo .exe obtengo el siguiente error.
system.Configuration.ConfigurationErrorsException: solo se
<configSections>
elemento<configSections>
por archivo de configuración y, si está presente, debe ser el primer elemento secundario del elemento raíz<configuration>
.
El archivo App.config es
<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>
--
--
--
--
Si elimino el
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0"/>
</startup>
entonces funciona bien ¿Puede alguien ayudarme?
Deberías simplemente leer el mensaje de error. Contiene todo lo que necesita saber para solucionar el problema:
configSections
debe ser el primer elemento secundario del elemento raíz:
<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>
Soy consciente de que debe ser el primer elemento secundario, y cambiar el archivo de configuración hace que el problema desaparezca. Sin embargo, el archivo de configuración se genera automáticamente, por lo que cada vez que eso sucede, el error vuelve porque se está generando incorrectamente ...
El archivo Error 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>
El error fue
Para arreglar el error, reordené los elementos y se corrigió el error.