2012-11-16 66 views
0

我創建了一個WCF服務。Web服務包含一個空的服務標籤

在WSDL中,我看不到服務應綁定的URL和PORT。

我看到的是:

<wsdl:service name="SimpleWebService"/> 

任何想法,我究竟做錯了什麼?也許在web.config中的東西?

<system.serviceModel> 
    <client /> 
    <bindings> 
     <webHttpBinding> 
      <binding closeTimeout="00:10:00" openTimeout="00:10:00" receiveTimeout="00:10:00" sendTimeout="00:10:00" maxBufferSize="2147483647" maxBufferPoolSize="2147483647" maxReceivedMessageSize="2147483647"> 
       <readerQuotas maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" /> 
      </binding> 
     </webHttpBinding> 
    </bindings> 
    <services> 
     <service name="WS.OS.SimpleWS" behaviorConfiguration="myServiceBehavior"> 
      <endpoint name="webHttpBinding" address="" binding="webHttpBinding" contract="WS.OS.SimpleWS" behaviorConfiguration="webHttp" /> 
      <endpoint name="mexHttpBinding" address="mex" binding="mexHttpBinding" contract="IMetadataExchange" /> 
     </service> 
    </services> 
    <behaviors> 
     <serviceBehaviors> 
      <behavior name="myServiceBehavior"> 
       <serviceMetadata httpGetEnabled="true" /> 
       <serviceDebug includeExceptionDetailInFaults="false" /> 
      </behavior> 
     </serviceBehaviors> 
     <endpointBehaviors> 
      <behavior name="webHttp"> 
       <webHttp /> 
      </behavior> 
     </endpointBehaviors> 
    </behaviors> 
    <serviceHostingEnvironment multipleSiteBindingsEnabled="true" /> 
</system.serviceModel> 
+0

你能提供你的任何代碼嗎?配置文件?其他相關的源代碼? – Haris

+0

我用web.config更新了這篇文章 –

+0

是否託管在IIS中(我猜是因爲你有serviceHostingEnvironment標籤)? – iMortalitySX

回答

0

看着這個問題和配置,我假設(我們都知道在哪裏導致)你的服務託管在IIS中。因此,給定「」的地址並且沒有指定端口,您將不得不查看您的IIS設置以查找該服務打開的站點和端口。對於HTTP的defualt爲80,HTTPS爲443

所以簡單的例子,如果你的服務是在IIS的「默認網站」,那麼您的服務將可能是在:

http://YourServer/YourService/YourService.svc 

如果有一個託管在那裏的Web應用程序位於特定的不同站點下,您需要查看IIS的設置才能找到它。通常也讓IIS承載SVC爲默認頁面,因此您可以只有前兩個部分,而不是URI中的實際頁面。除非您開始深入您的Web服務器,否則我認爲您不會有太大的運氣。