簡體   English   中英

找不到名稱為WCF的端點

[英]cannot find WCF endpoint with name

我的RESTFUL WCF與web.config看起來像

<system.serviceModel>
    <serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
    <bindings>
        <basicHttpBinding>
            <binding name="ServiceSoap" closeTimeout="00:01:00" openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00" allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard" maxBufferSize="65536" maxBufferPoolSize="524288" maxReceivedMessageSize="65536" messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered" useDefaultWebProxy="true">
                <readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384" maxBytesPerRead="4096" maxNameTableCharCount="16384" />
                <security mode="Transport">
                    <transport clientCredentialType="None" proxyCredentialType="None" realm="" />
                    <message clientCredentialType="UserName" algorithmSuite="Default" />
                </security>
            </binding>
            <binding name="basicHttpBindingConfig" maxBufferSize="2147483647" maxReceivedMessageSize="2147483647" maxBufferPoolSize="2147483647" closeTimeout="00:10:00" openTimeout="00:10:00" receiveTimeout="00:10:00" sendTimeout="00:10:00">
                <security mode="None" />
                <readerQuotas maxDepth="64" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="4096" maxNameTableCharCount="16384" />
            </binding>
            <binding name="basicHttpBindingConfig2" maxBufferSize="2147483647" maxReceivedMessageSize="2147483647" maxBufferPoolSize="2147483647" closeTimeout="00:10:00" openTimeout="00:10:00" receiveTimeout="00:10:00" sendTimeout="00:10:00">
                <security mode="None" />
                <readerQuotas maxDepth="64" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="4096" maxNameTableCharCount="16384" />
            </binding>
            <binding name="secureBasicHttpBindingConfig" maxBufferSize="2147483647" maxReceivedMessageSize="2147483647" maxBufferPoolSize="2147483647" closeTimeout="00:10:00" openTimeout="00:10:00" receiveTimeout="00:10:00" sendTimeout="00:10:00">
                <security mode="Transport" />
                <readerQuotas maxDepth="64" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="4096" maxNameTableCharCount="16384" />
            </binding>
        </basicHttpBinding>
    </bindings>
    <behaviors>
        <serviceBehaviors>
            <behavior name ="servicebehavior">
                <serviceMetadata httpGetEnabled="true"/>
                <serviceDebug includeExceptionDetailInFaults="false"/>
            </behavior>
        </serviceBehaviors>
        <endpointBehaviors>
            <behavior name="restbehavior">
                <webHttp/>
            </behavior>
        </endpointBehaviors>
    </behaviors>
    <services>
        <service name="Schools.WebService.SchoolsWebService" behaviorConfiguration ="servicebehavior">

        <endpoint name="SOAPEndPoint" binding="basicHttpBinding"  contract="Schools.WebService.ISchoolsWebService" address ="soap"/>
        <endpoint name="RESTEndPoint" binding="webHttpBinding"  contract="Schools.WebService.ISchoolsWebService" address ="rest" behaviorConfiguration ="restbehavior"/>
        <endpoint contract="IMetadataExchange" binding="mexHttpBinding" address="mex" />

        </service>
    </services>

</system.serviceModel>

但是在創建Webrefrence以使用(SOAP)時,

_tempClient = new ArabicEWorldWebServiceClient("SOAPEndPoint");

我有錯誤:

在ServiceModel客戶端配置部分中找不到名稱為'SOAPEndPoint'且合同為'SchoolsWebServiceClientInstance.ISchoolsWebService'的終結點元素。 這可能是因為找不到您的應用程序的配置文件,或者是因為在客戶端元素中找不到與該名稱匹配的端點元素。

我認為您缺少客戶端配置,否則可能是錯誤的。 您剛剛發布了服務配置。 在客戶端,您還需要配置一個端點以能夠打開服務的通道。 客戶端端點是在<system.serviceModel><client>標記內定義的

有關客戶端配置的更多詳細信息,請參見此處

您的客戶端配置可能看起來像這樣:

<system.serviceModel>
    <bindings>
           <basicHttpBinding>
            <!--This is only an example. Make sure your binding configuration regarding security and other matters, matches your service.-->
            <binding name="httpBindingConfig" maxBufferSize="2147483647" maxReceivedMessageSize="2147483647" />
        </basicHttpBinding>
    </bindings>
    <client>
        <endpoint
            name="SOAPEndPoint"
            address="http://localhost/SOAP"
            binding="basicHttpBinding"
            bindingConfiguration="httpBindingConfig"
            contract="Schools.WebService.ISchoolsWebService" />
    </client>
</system.serviceModel>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM