Подтвердить что ты не робот

Раздел конфигурации "system.servicemodel" не может быть прочитан, потому что отсутствует объявление раздела

У меня проблема. Мой старый веб-сервер (Windows 2003) был заменен на 2008 R2. Мне была предоставлена ​​учетная запись администратора, и я могу делать все, что захочу, но я не эксперт в этой области. Я настроил роли для разработки приложений и веб-сервера (iis7).

НО, мой сайт работает .NET4, а роль установлена ​​только 3.5. Поэтому я попытался установить .NET4 вручную, на сервере. Моя проблема заключается в том, что мой сайт не будет работать над этим из-за раздела System.ServiceModel в моем web.config. Я убедился, что он работает в пуле приложений .NET4.

Я предполагаю, что это проблема WCF, но я не могу понять, как ее решить. Я пробовал все, что нашел в Google. aspnet_regis, ServiceModelReg.exe и так далее. Я даже попытался переустановить роль веб-сервера, но по-прежнему получаю эту ошибку, каждый раз, когда я пытаюсь ввести настройки сайтов.

Я надеюсь, что здесь есть несколько экспертов, которые знают, как это исправить.

4b9b3361

Ответ 1

По-видимому, IIS7 нуждается в разделе System.WebServer, даже если он пуст. Добавление следующего в мой файл web.config исправило мою проблему.

  <system.webServer>
  </system.webServer>

Ответ 3

Перейдите в пулы приложений в IIS и выберите "Set Applicaiton Pool Default" [доступно в правом верхнем углу] и проверьте версию .net framework.

Примечание. Он по умолчанию выбирается как .net 4.0

Ответ 4

У меня была другая причина для получения этой ошибки.

Это произошло во время миграции проекта MVC с .Net 4.0 до 4.5, где библиотека Microsoft.IdentityModel заменена на System.identityModel. В моем случае я выполнил все необходимые шаги миграции Web.Config указанные здесь, но забыл изменить имя раздела в разделе configSections:

<configSections>
 <section name="microsoft.identityModel" type="Microsoft.IdentityModel.Configuration.MicrosoftIdentityModelSection, Microsoft.IdentityModel, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
</configSections>

В качестве написанного здесь, определение раздела должно быть:

<section name="system.identityModel" type="System.IdentityModel.Configuration.SystemIdentityModelSection, System.IdentityModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>

Ответ 5

Проблема для меня заключалась в том, что службы WCF не были установлены. Установка этого исправила проблему для меня: http://blogs.msdn.com/b/knom/archive/2009/10/14/iis7-wcf-services-svc-do-not-work.aspx

Обратите внимание, что изменение пула приложений .NET с 2.0 до 4.0 не было для меня вариантом, потому что сайт должен был работать на 2.0.

Ответ 7

У меня была та же проблема... Я исправил ее просто: aspnet_regiis.exe -i