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

Не удалось найти расширение привязки конфигурации "system.serviceModel/bindings/basicHttpsBinding"

Я получаю эту ошибку, когда пытаюсь перейти к моему файлу .svc. Похоже, что он не нашел мой basicHttpsBinding; вот этот раздел моего web.config:

<system.serviceModel>
<behaviors>
  <serviceBehaviors>
    <behavior>
      <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true"/>
      <serviceDebug includeExceptionDetailInFaults="true"/>
    </behavior>
  </serviceBehaviors>
</behaviors>
<protocolMapping>
  <add binding="basicHttpsBinding" scheme="https"/>
</protocolMapping>
<serviceHostingEnvironment aspNetCompatibilityEnabled="false" multipleSiteBindingsEnabled="true"/> 

Я пробовал искать через Google, но любые ответы, которые я мог найти, похоже, не применимы к тому, что я здесь делаю. Большинство из того, что я нашел, говорили о пользовательских привязках, о которых я не думаю, что у меня есть. Я, честно говоря, даже не уверен, что может вызвать эту ошибку, поэтому любая помощь будет очень признательна. Если вам нужна дополнительная информация, дайте мне знать, и я добавлю.

4b9b3361

Ответ 1

BasicHttpsBinding - новое связывание в .NET 4.5, поэтому вы не можете использовать его в приложении 4.0. Либо вы удалите файл сопоставления, либо используете другое связывание, например basicHttpBinding или wsHttpBinding.

При настройке SSL в IIS это также должно работать.

Ответ 2

Если у вас есть аналогичный сценарий, как у меня, где созданный Visual Studio Web.config имеет следующие конфигурации:

  <system.web>
    <compilation debug="true" targetFramework="4.5" />
    <pages controlRenderingCompatibilityVersion="4.0" />
  </system.web>

... добавить <httpRuntime targetFramework="4.5" />

Итак, теперь у вас

  <system.web>
    <compilation debug="true" targetFramework="4.5" />
    <pages controlRenderingCompatibilityVersion="4.0" />
    <httpRuntime targetFramework="4.5" /> 
  </system.web>

Я также продолжил удаление <pages controlRenderingCompatibilityVersion="4.0" /> без каких-либо последствий в моей ситуации.

Ответ 3

Удалите раздел protocolMapping из web.config, и он будет работать.