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>

  • 相关阅读:
    VC++6.0调用外部dll
    VC++6.0配置Opencv
    Qt 解决中文乱码问题
    Qt Widget控件设置布局后,内部控件大小发生变化
    QtDesigner 控件自适应窗体的方法
    QtSoap调用WebService服务
    QLabel自定义类实现点击效果以及鼠标掠过字体的颜色变化效果
    VS2017中工具箱控件是灰色(不可用)解决方法
    OpenCV(3.4.1) Error: Assertion failed (size.width>0 && size.height>0) in cv::imshow, file C:uildmaster_winpack-build-win64-vc15opencvmoduleshighguisrcwindow.cpp, line 356
    OpenCV之错误集锦-1
  • 原文地址:https://www.cnblogs.com/Winston/p/1157504.html
Copyright © 2011-2022 走看看