zoukankan      html  css  js  c++  java
  • Endpoint

    What is Endpoint
        Every service is associated with an address that defines where the service is. a binding that defines how to communicate with the service, and a contract that defines what the service does.and they are abbreviated as ABC. That is to say, the endpoint is the fusion(融合) of the address, contract, and binding
    .
        every service must expose at least one business endpoint and each endpoint has exactly one contract. all endpoints on a service have unique address, and a a single service can expose multiple endpint.  we can configure endpoints either administratively ussing a config file or programmatically.

    Administratively Endpoint configuration
         a) a sample about config the endpoints administratively through config file
        <system.serviceModel>
            <services>
                <service name="myservice">
                    <endpoint
                        address="http://localhost:8000/myservice"
                        binding="wsHttpBinding"
                        contract="MyNamespace.IMycontract"
                    />
                    <endpoint
                        address="net.tcp://localhost:8001/myservice"
                        binding="netTcpBinding"
                        contract="MyNamespace.IMycontract"
                    />
                    <!--
                     you can also specify the relative address of the endpoint,
                     the two former endpoints specified the absolute address all
                    -->
                    <endpoint
                        address="myservice"
                        binding="wsHttpBinding"
                        contract="MyNamespace.IMycontract"
                />
                </service>
            </services>
        </system.serviceModel>
    in this config file, we have exposed two endpoints in one WCF service.


    Binding configuration
        we can use the config file to customize the binding used by the endpint. To that end, add the bindingConfiguration tag to the endpoint section, and name a customized section in the bindings section of the config file. the following demostrations using this technique to enable transaction propagation(繁殖,传送)

    <system.serviceModel>
        <services>
            <service name="myservice">
                <endpoint
                    address="net.tcp://localhost:8000/myservice"
                    bindingConfiguration="TransactionalTCP"
                    binding="tcpNetBinding"
                    contract="IMycontract"
                />
            </service>
        </services>
        <bindings>
            <netTcpBinding>
                <binding 
                name="TransactionalTCP"
               transactionFlow="true"
                />        
            </netTcpBinding>
        </bindings>
    </system.serviceModel>

  • 相关阅读:
    ABP 前端 组件之间传递参数的几种方式
    angular Form 自定义验证
    Docker 启用失败 failed to start docker Application container Engin
    C# 委托与事件
    c# Application.DoEvents()
    c# 泛型
    Ubuntu如何挂载U盘
    jdk1.8 List根据时间字段倒序排序
    yarn安装模块报错:check python checking for Python executable "python2" in the PATH
    yarn : 无法加载文件 C:\Users\Administrator\AppData\Roaming\npm\yarn.ps1,因为在此系统上禁止运行脚本。
  • 原文地址:https://www.cnblogs.com/Winston/p/1157504.html
Copyright © 2011-2022 走看看