如何更改默认的WCF服务绑定?

在我的WCF中,我有一些服务。 其中一个必须对邮件大小有更大的限制,所以我必须创建另一个绑定并更改配置。

但是……我无法在Web.config中看到我的服务的任何配置 – 没有。 什么是默认的? 那么我可以在哪里更改服务绑定?

在WCF 4.0+中引入了默认绑定和端点的概念。 例如,如果您创建一个新的WCF服务应用程序,开箱即用而没有任何更改,您将获得一个默认端点,使用basicHttpBindinghttp的默认绑定)监听服务的URI。

如果您需要的值大于绑定配置的默认值,则有两种选择:

创建默认绑定配置部分。 这是通过从绑定中省略name属性来完成的,如下所示:

        

请注意,没有name属性(为了说明的目的,其他属性已被省略)。 您指定的配置将用作通过http进入的任何请求的默认配置并使用basicHttpBinding

按照步骤1创建配置,但使用name属性,然后使用bindingConfig属性将该绑定配置分配给显式端点,如下所示:

             

第二个示例将“MyBinding”配置分配给定义的端点。

如果你想为http请求使用basicHttpBinding以外的东西,那么你也可以改变协议映射,如Neel的答案所示。

您还可以查看A Developer的Windows Communication Foundation 4简介 ,了解有关WCF 4.0中引入的默认绑定/端点/等的更多信息。

如果要将默认绑定更改为wsHttpBinding,则必须使用: