Kevin M
Kevin M

Reputation: 5506

The configuration section 'system.web.extensions' cannot be read because it is missing a section declaration

I am getting error (The configuration section system.web.extensions cannot be read because it is missing a section declaration) while installing my Web Application in Server 2008 32 bit machine with .NET Framework 4.0. but it works well in 2008 r2 64 bit machine.

This is my webconfig file info

<configuration>
<runtime>
    <assemblyBinding appliesTo="v2.0.50727" xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="System.Web.Extensions" publicKeyToken="31bf3856ad364e35"/>
        <bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="3.5.0.0"/>
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Web.Extensions.Design" publicKeyToken="31bf3856ad364e35"/>
        <bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="3.5.0.0"/>
      </dependentAssembly>
    </assemblyBinding>
  </runtime>
  <system.web.extensions>
    <scripting>
      <webServices>
        <jsonSerialization maxJsonLength="2147483647"/>
      </webServices>
    </scripting>
  </system.web.extensions>
</configuration>

Any idea to get rid of this error?

Note: I have checked all the related entries in Stack over flow but nothing was useful for me

Upvotes: 54

Views: 120674

Answers (7)

Ross
Ross

Reputation: 485

For me, changing the application pool .NET Framework version from v2.0 to v4.0 solved this issue.

Open IIS --> Select App Pools --> Select App Pool from list --> From context menu select Basic Settings... --> Change .NET Frame version to v4.0

Upvotes: 1

Praveen
Praveen

Reputation: 11

c:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i

I tried this and it works good for me. Maybe helpful to someone.

Upvotes: 1

Satish Hangarkatte
Satish Hangarkatte

Reputation: 11

Note down .netFramework version v4... (examplev4.0.030319) you have installed Edit your application pool to correct .NET Framework v4..

Good luck

-Satish

Upvotes: 1

Kevin M
Kevin M

Reputation: 5506

The issue resolved for me after adding the following configuration setting in my webconfig file

<configSections>
    <sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">
      <sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">
        <section name="scriptResourceHandler" type="System.Web.Configuration.ScriptingScriptResourceHandlerSection, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" allowDefinition="MachineToApplication"/>
        <sectionGroup name="webServices" type="System.Web.Configuration.ScriptingWebServicesSectionGroup, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">
          <section name="jsonSerialization" type="System.Web.Configuration.ScriptingJsonSerializationSection, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" allowDefinition="Everywhere"/>
        </sectionGroup>
      </sectionGroup>
    </sectionGroup>
  </configSections>

We can refer this article for more info: http://www.morgantechspace.com/2013/11/The-configuration-section-system-web-extensions-cannot-be-read-because-it-is-missing-a-section-declaration.html

Upvotes: 49

Praveen Kumar Thalluri
Praveen Kumar Thalluri

Reputation: 1157

Try changing the application pool run time from .net 2.0 to .net 4.0

Upvotes: 78

Kiryl
Kiryl

Reputation: 180

Probably related question: .NET using wrong 2.0 machine.config instead of 4.0. I've experienced similar issue... And solution for me:

Not sure, that it's realy reason/solution, but last thing I've try it is (in IIS Manager):

  1. Navigate to server in right panel (root node)
  2. In the features list open "ISAPI and CGI Restrictions"
  3. There is 2 items with descriptions ASP.NET v4.0.30319 with restrictions set to Deny
  4. Set restrictions value to Allowed

This is last thing i've tried before issue is gone.

Upvotes: 2

user3946348
user3946348

Reputation: 81

I also had the same problem after upgrading my OS from Windows Server 2003 to Windows Server 2008 R2 , I just changed the application pool settings to .NetFramework 4.0.0 and also changed the classic to Integrated mode ... my problems solved ..

Upvotes: 8

Related Questions