2011-09-16 92 views
0

我是WCF的新手。請告訴我爲wcf Web服務創建多個端點有什麼優勢?WCF服務中多個端點的優點

也可以請你幫我一個例子,說明如何在IIS中託管這樣的服務,以及wcf客戶端如何連接到提供的確切端點。

謝謝。

回答

2

提供不同端點的優點是每個端點可以使用不同的綁定。這種方式基於客戶端功能,他可以選擇適當的綁定。例如,您可以爲Java,PHP,...客戶端和專有的二進制端點公開一個可互操作的端點,該端點可能更快,但僅適用於.NET客戶端。

每個端點都有地址,綁定和合同。所以客戶可以選擇他想要使用哪個服務端點。

若要host a WCF service in IIS您有兩種可能性:在只有HTTP綁定可用的ASP.NET應用程序(basicHttpBinding,wsHttpBinding,webHttpBinding,...)中或在WAS(僅限IIS 7.0)中可以使用二進制綁定。從客戶端角度來看,您可以向客戶端項目添加一個指向給定服務url的服務引用並使用該服務。這裏是another article你討論這個。

1

從以往的經驗:

  • 使用不同的結合,例如一個用於BasicHttpBinding Java客戶端同時使用WsHttpBinding的.NET客戶端。還有一些HTTPS和其他HTTP ...

  • 劃分和暴露不同的合同/接口。例如,您有一個接口可以公開許多操作,並且您有一個可以執行基本操作的簡化接口,並將第二個接口發佈到外部,以便內部客戶端使用端點進行擴展接口,但外部客戶端使用另一個接口。

例如

interface IFoo 
{ 
    void DoBasic(); 
} 

interface IFooInternal : IFoo 
{ 
    void DoMore(); 
} 

現在你有一類實現兩個:

public class Foo : IFooInternal 
{ 
    .... 
} 

現在你而實現在同一個班只有一個外暴露。