Итак, мы обновили наш сайт с 3.5 SP1 -> .NET 4.Проблема с <System.Web.Extensions> группы конфигурации при обновлении до .NET 4.0
Когда мы запустили сайт, мы получили внутренний Ошибка сервера (500), с указанием следующей конфигурацией группы не может быть прочитана:
<system.web.extensions>
<scripting>
<scriptResourceHandler enableCompression="true" enableCaching="true" />
<webServices>
<jsonSerialization maxJsonLength="999999" />
</webServices>
</scripting>
</system.web.extensions>
мы закомментированы этим разделом и на сайте побежал штраф (но теперь мы получаем проблемы с JSON - из-за требуемым выше имущество) ,
Мы читаем темы этой проблемы, и большинство из них говорит: «В вашем пуле приложений не работает 4.0». И это так, так что это не проблема.
Я также прочитал темы, в которых IIS как-то читает старый файл machine.config.
С .NET 4, как вы знаете, многие разделы web.config были перенесены в machine.config.
Так мы помещаем этот раздел назад в верхней части web.config:
<sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<section name="scriptResourceHandler" type="System.Web.Configuration.ScriptingScriptResourceHandlerSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
<sectionGroup name="webServices" type="System.Web.Configuration.ScriptingWebServicesSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<section name="jsonSerialization" type="System.Web.Configuration.ScriptingJsonSerializationSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="Everywhere" />
<section name="profileService" type="System.Web.Configuration.ScriptingProfileServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication" />
<section name="authenticationService" type="System.Web.Configuration.ScriptingAuthenticationServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication" />
<section name="roleService" type="System.Web.Configuration.ScriptingRoleServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication" />
</sectionGroup>
</sectionGroup>
</sectionGroup>
И сайт в настоящее время, кажется, работает нормально.
Тем не менее, я немного обеспокоен, если это правильное решение.
Любые идеи людей? Правильно ли это?
EDIT:
3 недели и нет ответов ... блин. =)
Я также имею такой же вопрос, как вы ... Я не знаю, почему, но если я узнать, почему, я вернусь к вам на эту тему. –