簡體   English   中英

多個客戶端端點指向同一WCF服務

[英]Multiple client endpoints to the same WCF service

我有一個在LAN IIS上運行的WCF服務,也可以從互聯網訪問。

使用該服務的客戶端是在LAN上運行並通過Internet遠程運行的應用程序。 在DNS服務器上沒有任何轉發將http://www.corporate.com/Service重定向到http:// serverName / Service,所以我想在客戶端上需要2個端點。

如何在客戶端中設置多個端點(它是否像復制app.config中生成的現有enpoint一樣簡單但更改地址?)以及如何配置客戶端以使用特定端點?

您可以在app.config或資源字符串中存儲端點地址。 然后使用任何條件將所需的端點地址傳遞給服務構造函數。

var endpoint = ApplicationSettings.IsRemote ? Resources.RemoteEndPoint: Resources.LocalEndPoint;
var service = new MyWCFService(new BasicHttpBinding(), new Endpoint(endpoint));

應用程序的每個副本的app.config(或web.config)應該具有基於其所需服務集的端點。 對於LAN安裝,請使用LAN可見端點; 對於所有其他人,請使用互聯網。

它可以為您節省路由器之旅,但為什么不在任何地方使用互聯網端點? 如果您的LAN計算機具有到網絡的網關,則可以看到外部可見的地址。

它就像更改地址和使用app config中生成的端點一樣簡單。 您可能必須更改安全模式,具體取決於任一服務器上支持的內容,或者它們是否都運行HTTPS。 我們有一個應用程序,我們根據Silverlight應用程序中當前URL的相對路徑構建目標端點。 我們還根據存在的HTTPS動態更改安全模式,並且效果很好。

暫無
暫無

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

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