2011-05-02 58 views
0

定義新的端點我想定義兩個端點,這將代表了兩種不同的接口無法在basicHttpBinding的

<services> 
    <service behaviorConfiguration="ServiceBehavior" > 
    <endpoint 
     binding="basicHttpBinding" 
     bindingConfiguration="LargeData_basicHttpBinding" 
     contract="Contracts.IService1" /> 
    <endpoint 
     binding="basicHttpBinding" 
     bindingConfiguration="LargeData_basicHttpBinding" 
     contract="Contracts.IService2" /> 
    <endpoint 
     address="mex" 
     binding="mexHttpBinding" 
     contract="IMetadataExchange" /> 
    </service> 
</services> 

當我嘗試添加第二個端點IService2,我可以從瀏覽器只能訪問服務2 - 如果我從配置文件中刪除service2 - 我可以從瀏覽器訪問service1 & & service2。

我的錯誤是什麼?

回答

2

您沒有爲端點指定任何本地/相對地址!因此,它們都使用虛擬目錄的相同基址/位置。

嘗試指定一個相對地址兩種:

<endpoint 
    address="Service1" 
    binding="basicHttpBinding" 
    bindingConfiguration="LargeData_basicHttpBinding" 
    contract="Contracts.IService1" /> 
<endpoint 
    address="Service2" 
    binding="basicHttpBinding" 
    bindingConfiguration="LargeData_basicHttpBinding" 
    contract="Contracts.IService2" /> 

現在,你應該能夠使用這兩種服務,在

http://yourserver/virtualdirectory/YourService.svc/Service2 
+0

好了一個在

http://yourserver/virtualdirectory/YourService.svc/Service1 

的,另外,謝謝。但我添加了兩個.svc文件 - 每個界面一個 - 然後我可以使用http://yourserver/virtualdirectory/Service1.svc/和http://yourserver/virtualdirectory/Service2.svc/ - 是不是? – Yanshof 2011-05-02 08:22:25

+0

@Yanshof:是的 - 但是然後你需要兩個單獨的''在你的''裏面的部分'web.config - 每個服務/ svc文件一個,一個basicHttp端點。 – 2011-05-02 09:21:45

相關問題