找不到配置绑定扩展“system.serviceModel/bindings/basicHttpsBinding”

Posted

技术标签:

【中文标题】找不到配置绑定扩展“system.serviceModel/bindings/basicHttpsBinding”【英文标题】:Configuration binding extension 'system.serviceModel/bindings/basicHttpsBinding' could not be found 【发布时间】:2013-08-16 21:05:28 【问题描述】:

当我尝试导航到我的 .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 进行搜索,但我能找到的任何答案似乎都不适用于我在这里所做的事情。我发现的大部分内容都是关于自定义绑定的,我认为我没有。老实说,我什至不确定是什么导致了这个错误,所以任何帮助都将不胜感激。如果您需要更多信息,请告诉我,我会添加。

【问题讨论】:

我遇到了同样的问题。任何帮助将不胜感激! 您使用什么 .NET 版本? BasicHttpsBinding 需要 .NET 4.5 @slfan 我们使用的是 .Net 4.0;你会建议我做什么?我只需要删除该协议映射部分吗? 我也在使用 .net 4.0,我尝试删除它,现在它似乎可以工作了。请发布答案,以便我可以为您提供一些帮助。 【参考方案1】:

BasicHttpsBinding 是 .NET 4.5 中的新绑定,因此您不能在 4.0 应用程序中使用它。要么删除 protocolMapping,要么使用其他绑定,例如 basicHttpBindingwsHttpBinding

当您在 IIS 中配置 SSL 时,这应该也可以工作。

【讨论】:

所以你是说你只需要 bsicHttpBinding 和 ssl 仍然可以工作? @CoffeeAddict 这两个绑定非常相似。请参阅此线程***.com/questions/14874529/… 以了解区别【参考方案2】:

如果您有与我类似的情况,其中 Visual Studio 生成的 Web.config 具有以下配置:

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

...添加&lt;httpRuntime targetFramework="4.5" /&gt;

所以你现在有

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

我还继续删除了&lt;pages controlRenderingCompatibilityVersion="4.0" /&gt;,但对我的情况没有任何影响。

【讨论】:

这个答案非常适合 .Net 4.5 应用程序。鉴于我们已经说过 targetFramework="4.5",为什么有必要这样做并不明显,但似乎确实存在部分配置仍默认为 4.0 的情况,除非我们在此处设置目标版本以及&lt;compilation&gt;【参考方案3】:

web.config 中删除protocolMapping 部分,它将起作用。

【讨论】:

【参考方案4】:

如果您使用框架 4.5 或更高版本,您可以将以下代码添加到您的 web.config

标签上可以设置以下属性。

  <system.Web>
    <httpRuntime targetFramework="4.8" />
  </system.Web>

【讨论】:

以上是关于找不到配置绑定扩展“system.serviceModel/bindings/basicHttpsBinding”的主要内容,如果未能解决你的问题,请参考以下文章

Sqlalchemy.exc.UnboundExecutionError:找不到映射器 Mapper|SellsTable|sellers 或此会话上配置的绑定

任何 Help Watch 应用扩展都找不到匹配的配置文件?

关于mybatis的各种绑定(bind)错误,找不到类的情况

PDO 扩展配置 - 我在我的 PHP 应用程序中不断收到 PDOException“找不到驱动程序”

网站绿锁里面显示的ssl证书 在iis服务器证书列表里面找不到,请问这个证书是在哪儿绑定的

从 http 到 https,得到“找不到与绑定 WebHttpBinding 的端点的方案 http 匹配的基地址”