无法使用system.web.extensions托管网站

时间:2013-02-08 07:22:12

标签: c# asp.net iis web-config iis-6

我正在开发一个.net 4.0 Web应用程序,我将它托管在IIS上。已成功托管应用程序多次,而未在<system.web.extensions>文件中使用web.config

应用程序发布时没有任何错误,但当我尝试使用IIS托管它并尝试启用Directory Browsing时,它会发出错误The configuration section system.web,extensions cannot be read because its missing a section declaration。我已经从应用程序池中将其设置为.net 4.0应用程序,但仍然提供错误。

以下是我的web.config文件,

  <?xml version="1.0"?>
  <!--
    For more information on how to configure your ASP.NET application, please visit
    http://go.microsoft.com/fwlink/?LinkId=169433
    -->
  <configuration>
    <system.web>
      <compilation debug="true" targetFramework="4.0">
        <assemblies>
          <add assembly="MySql.Data, Version=6.5.4.0, Culture=neutral, PublicKeyToken=C5687FC88969C44D"/>
          <add assembly="System.Security, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
        </assemblies>
      </compilation>
      <httpRuntime requestValidationMode="2.0" executionTimeout="1000" maxRequestLength="2147483647" />
    </system.web>
    <system.web.extensions>
      <scripting>
        <webServices>
          <jsonSerialization maxJsonLength="2147483647">
          </jsonSerialization>
        </webServices>
      </scripting>
    </system.web.extensions>
  </configuration>

我可能知道我在这里做错了什么..这是一件令人头疼的问题,我已经在线尝试了大部分资源,但都建议将应用程序池设置为我已经完成的.net 4.0

非常感谢您的帮助:)

3 个答案:

答案 0 :(得分:10)

<configuration>
  <configSections>
    <section name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup" />
  </configSections>
</configuration>

将其添加到配置部分。奇怪的是它在applicationHost.config

中没有默认值

答案 1 :(得分:2)

如果您在IIS上运行4.0应用程序,其中应用程序池设置为2.0 - 3.5集成管道,那么您将看到有关缺少扩展的部分声明的错误。

您需要在IIS上设置4.0-4.5集成管道的应用程序池。

答案 2 :(得分:1)

您可以通过在Web配置文件中添加以下配置设置来解决此问题

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