[c#] 구성 파일 당 하나의 configSections 요소 만 허용되며 존재하는 경우 루트 구성 요소의 첫 번째 하위 요소 여야합니다.

콘솔 응용 프로그램을 개발 중이며 .exe 파일을 실행할 때 다음 오류가 발생합니다.

system.Configuration.ConfigurationErrorsException: <configSections>구성 파일 당 하나의 요소 만 허용되며 존재하는 경우 루트 <configuration>요소 의 첫 번째 하위 요소 여야합니다 .

App.config파일은 다음과 같습니다 .

<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>
    <!-- ... -->

그러나 다음 startup섹션을 제거하면 정상적으로 작동합니다.

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



답변

오류 메시지 자체는 실제로 올바른 수정 사항을 자세히 설명합니다.

configSections루트 요소 의 첫 번째 자식 * 이어야합니다 .

* 강조 추가

따라서 configSections맨 위로 이동하십시오 .

<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>


답변

오류 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> 

오류는

여기에 이미지 설명 입력

오류를 수정하기 위해 요소를 재정렬하고 오류를 수정했습니다.

여기에 이미지 설명 입력


답변