共用方式為


應用程式之間的通訊

更新:2007 年 11 月

在 [應用程式設計工具] 中,您可以連接應用程式的端點來設定它們之間的通訊路徑。在應用程式圖表上,連接是根據消費者端點的組態,表示應用程式在開發環境中的連接方式,而此環境不一定是部署環境。對於實作的應用程式和支援的連接類型,連接會在應用程式組態檔中建立組態設定。變更應用程式圖表上的連接將會變更這些組態設定,反之亦然。以組態檔項目當做連接的基礎,可確保提供者端點的位址不會硬式編碼在消費者應用程式中,因而可在部署時重新設定連接。

秘訣

應用程式圖表上的連接,表示當您使用 [Visual Studio 偵錯工具] 偵錯方案時所遵循的連接。如需詳細資訊,請參閱 Visual Studio 偵錯

例如,將 ASP.NET 應用程式上的 Web 服務提供者端點連接至應用程式圖表上的另一個應用程式,會在消費者應用程式上建立 Web 服務消費者端點。這個消費者端點會以 Web 提供者端點的位址來設定。

相較之下,使用 [系統設計工具] 建立之系統圖表上的連接,則會描述在部署系統的執行個體時如何連接應用程式。在系統圖表上,連接是在部署應用程式時以提供者端點的位址來設定消費者端點的指示。

如需詳細資訊,請參閱下列主題:

在應用程式圖表上設定通訊路徑

在應用程式圖表上,您可以透過端點來連接應用程式定義,以便設定應用程式之間的通訊路徑。您可以視需要加入或建立應用程式端點。圖表上的連接線會出現箭頭,表示由消費者端點至提供者端點的通訊方向。

根據預設,應用程式上的消費者端點必須連接至適當的提供者端點,應用程式才能正常運作。在應用程式圖表上,消費者端點的定義具有 [需要連線] 應用程式端點設定,而此設定會預設值為 True,且您無法在系統中納入使用該端點的應用程式時加以覆寫。不過,如果應用程式的實作允許這個連接成為選擇項 (Optional),您便可以在端點定義上將此設定變更為 False,或在系統的內容 (Context) 內納入端點時覆寫這項設定。否則,在任何包含相關應用程式的系統內,都必須連接或委派消費者端點。

注意事項:

如果 Web 服務消費者端點在需要連接時中斷連接,則在為包含相關應用程式的系統進行部署評估時,會產生驗證錯誤。唯一不需要連接的情況就是當應用程式已實作而不需組態資訊即可部署和使用時,不過這並不常見。如需詳細資訊,請參閱驗證部署圖表

如需詳細資訊,請參閱下列主題:

以下幾節的內容包含應用程式圖表上連接的詳細資訊:

  • 連接至 Web 服務

  • 外部資料庫的連接

  • 刪除或移動連接

連接至 Web 服務

在應用程式和系統設計期間將應用程式連接至同一個 Web 服務提供者端點,會指定其消費者應用程式將會在部署階段設定為使用通用 Web 服務 URL。開發所用的相同 Web 服務 URL,也會在部署階段使用。不過,您可以在系統中納入使用 Web 服務消費者應用程式時覆寫這些 URL,或是在部署時一起取代。評估系統的部署時,您產生的部署報告會提供如何在 Web 服務提供者與消費者之間傳用 URL 的詳細資訊。

[分散式系統設計工具] 會支援使用 SOAP 訊息進行通訊的應用程式類型。SOAP 是一種輕量型通訊協定,它會使用可擴充的 XML 訊息架構在分散式環境中交換結構化資訊。Web 服務也可以支援其他通訊協定,例如 HTTP-POST 或 HTTP-GET。不過,應用程式圖表僅會顯示 SOAP 端點,而不會視覺化這些額外的通訊協定。在應用程式圖表上,Web 服務端點表示服務介面,該服務介面是由可透過 HTTP 或 SOAP 繫結取得的一組作業組成。根據預設,ASP.NET 應用程式會為同一位址的這些作業同時提供 SOAP 1.1 和 SOAP 1.2 繫結。雖然為服務產生的 WSDL 檔案中會同時存在這兩個繫結,但只要這些繫結提供相同的行為 (具有相同的 WSDL 通訊埠類型),應用程式圖表便會將這些繫結表示為單一端點。

當 Web 參考用於建立 Web 服務用戶端 Proxy 類別,而 WSDL 檔案同時包含同一組作業的 SOAP 1.1 和 SOAP 1.2 繫結時,產生的 Proxy 類別預設會使用 SOAP 1.1 繫結。如果 WSDL 檔案中存在 SOAP 1.2 繫結,您可以用程式設計的方式讓 Proxy 類別使用這個繫結。使用的繫結版本會影響執行階段時所傳輸的訊息格式,不過,這對於可用的作業或是可傳遞和傳回的參數並沒有影響。如需 SOAP 和 WSDL 的詳細資訊,請造訪 MSDN Online。

如需詳細資訊,請參閱下列主題:

外部資料庫的連接

將應用程式連接至外部資料庫時,您可以為消費者應用程式上的資料庫消費者端點設定資料庫連接字串 (Connection String)。在應用程式和系統設計期間將應用程式連接至同一資料庫,會指定並記載通用資料庫的使用情形。不過,與 Web 服務連接不同的是,連接至同一個資料庫的資料庫消費者端點,不需使用相同的資料庫連接字串,甚至也不需指定相同的實體資料庫,不過確保它們會如此仍是最佳作法。

當您實作資料庫消費者應用程式時,Visual Studio 會產生包含應用程式組態檔的專案檔。設定資料庫連接會使連接字串資訊加入至這個組態檔。在部署時,這些資料庫連接字串多半會替換為實際的資料庫位置。開發期間通常不會使用實際執行資料庫,反之亦然。應用程式圖表所定義的連接字串有一部分可能會用在實際執行環境,也可能會在系統內容中包含使用消費者應用程式定義時遭到覆寫。

如需詳細資訊,請參閱 HOW TO:設定與外部資料庫的連接

刪除或移動連接

在應用程式圖表上刪除連接後,應用程式上的端點仍保持不變,因此您可以在不變更應用程式定義的情況下,重新連接這些端點,或連接至相容型別的不同端點。如需詳細資訊,請參閱在應用程式圖表上連接應用程式的規則

注意事項:

連接或重新連接 Web 服務端點時,如果消費者與提供者端點的 WSDL 繫結名稱與繫結命名空間不符,則會顯示工具提示。最佳的作法是結合 WSDL 繫結名稱與繫結命名空間,一起用於定義 Web 服務合約或行為。您可以不理會這則警告,繼續連接這些端點。不過,請確定這些端點實際上是相容的。此外,將 Web 服務消費者端點連接至不同的 Web 服務提供者端點時,系統會提示您要使用新的 Web 服務提供者端點更新消費者端點,還是要保留原來的消費者端點定義。如需詳細資訊,請參閱 HOW TO:重新連接應用程式圖表上的 Web 服務

刪除連接會使組態資訊從消費者應用程式的組態檔中移除。不過,如果消費者端點需要連接,您就必須重新連接消費者端點,應用程式才能正常運作。消費者端點會保留某些資訊。例如,Web 服務消費者端點會保留建立它的 WSDL 檔案位置相關資訊。這可能會與原始目標資訊相同,但不必如此。如果 Web 服務定義或 WSDL 檔案有所變更,則可能會使用這項資訊重新整理 Web 參考。如需詳細資訊,請參閱 HOW TO:從應用程式圖表中刪除連接

請參閱

工作

逐步解說:在應用程式圖表上定義應用程式

其他資源

在應用程式圖表上定義通訊路徑