什么是在BasicHttpBinding端点配置中负责的bindingConfiguration属性?

Mat*_* A. 6 wcf

所以我正在为WCF服务配置端点.我几乎没有整体服务的经验,但是在使用它们的项目中间已经陷入困境.我大致了解端点中的每个属性除了一个属性之外的其他属性."bindingConfiguration".

这是我的代码的模糊版本(实际信息是专有的):

      <endpoint address="http://localhost/SomeService.svc"
           binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_ISomeService"
           contract="SomeService.ICoreService" name="BasicHttpBinding_ISomeService" />
Run Code Online (Sandbox Code Playgroud)

这是MSDN对它的看法(因为它们没有专门解决它).

微软的MSDN入门不完整

当然,Stackoverflow有一些问题包含"bindingConfiguration"的字符串匹配,但没有一个问题可以解决我的问题:

最相关(我认为)Stackoverflow问题

关于这个用途的任何想法?

为了学习,我愿意在这里采取刺痛和错误.我认为它与身份验证或安全性有关.在检查界面时,我也注意到与此无关.

任何帮助都会很棒!

干杯

马特

car*_*ira 15

在绑定部分中,您可以为同一绑定类型(在您的情况下,basicHttpBinding)具有多个"配置".绑定配置在其中选择使用哪一个.

在MSDN中,您应该尝试查找<endpoint>(因为bindingConfiguration是属性)的引用,它将定义属性应该执行的操作.

在下面的示例中,服务定义了两个端点,两者都使用basicHttpBinding.其中一个暴露在"普通"HTTP上,另一个暴露在HTTPS上.该bindingconfiguration属性是告诉WCF使用哪个配置的属性.

<system.serviceModel>
    <bindings>
        <basicHttpBinding>
            <binding name="SimpleBasic">
                <security mode="None"/>
            </binding>
            <binding name="BasicOverHttps">
                <security mode="Transport"/>
            </binding>
        </basicHttpBinding>
    </bindings>
    <services>
        <service name="MyNamespace.MyService">
            <endpoint address="ep"
                      binding="basicHttpBinding"
                      bindingConfiguration="SimpleBasic"
                      contract="MyNamespace.IService" />
            <endpoint address="secure"
                      binding="basicHttpBinding"
                      bindingConfiguration="BasicOverHttps"
                      contract="MyNamespace.IService" />
        </service>
    </services>
</system.serviceModel>
Run Code Online (Sandbox Code Playgroud)