更新:2007 年 11 月
在 Visual Studio Team System Architecture 版中,您可以使用 [分散式系統設計工具],定義現有 Visual Studio 方案中的應用程式和設計應用程式系統。您可以將應用程式圖表或系統圖表加入方案,以執行這項工作。當您執行這項工作時,Visual Studio 會對方案進行反向工程,並針對方案中適當的專案,將應用程式定義加入應用程式圖表。您可以使用 [應用程式設計工具] 以視覺化方式檢視、定義、設定和實作應用程式。您可以使用 [系統設計工具] 設計應用程式系統。如需詳細資訊,請參閱 HOW TO:將應用程式圖表加入至方案和 HOW TO:將系統圖表加入至方案。
下列章節說明您可進行的其他變更,這些變更會對現有方案中的項目進行反向工程。這些章節也說明不支援反向工程的項目。
在現有方案中進行反向工程
不支援反向工程的項目
您也可以從舊版 Architecture 版升級方案。但是,這個版本不支援 Visual J# 專案。如需詳細資訊,請參閱升級 Architecture 版的較早版本。
在現有方案中進行反向工程
當您將應用程式圖表加入方案時,Visual Studio 會針對您對方案或方案中專案所做的變更進行反向工程。當圖表是開啟狀態或您重新開啟圖表時,圖表便會顯示這些變更:
加入應用程式圖表所支援之應用程式類型的專案。
您可以對任何應用程式圖表所支援之應用程式類型的專案進行反向工程。該應用程式的應用程式定義圖案會出現在應用程式圖表上。
當您對專案進行反向工程時,請注意下列考量:
如果您沒有足夠的權限可存取 IIS Metabase,則無法對應用程式圖表上的 ASP.NET Web 專案進行反向工程。
反向工程應用程式的 [目標 Framework] 屬性將會顯示為空白與唯讀。您可以檢視和變更專案屬性中的目標架構版本。根據預設,Visual Studio 會將產生之應用程式上的 [目標 Framework] 設定設定為 [.NET Framework 3.5]。請檢閱這個設定並視需要進行更新。如果您變更這個設定,請注意下列考量。如需詳細資訊,請參閱 HOW TO:為應用程式選擇 .NET Framework 版本。
如果您對 Office 專案進行反向工程,產生之應用程式的 [範本] 屬性就會顯示為空白且是唯讀狀態。但是,應用程式的 [Office 版本] 設定會反映出專案所使用的 Office 版本。如需詳細資訊,請參閱 HOW TO:變更應用程式的專案範本。
如果尚未安裝 Web Services Enhancement (WSE),則在含有應用程式圖表的方案中針對已啟用 Web Services Enhancement (WSE) 的 Web 服務專案進行反向工程或開啟作業,將會鎖定圖表。
若要解決這種情況,請關閉圖表、安裝 WSE,然後重新開啟圖表。如需詳細資訊,請參閱應用程式圖表疑難排解。
如需詳細資訊,請參閱下列主題:
不支援反向工程的項目
將 Web 服務加入至應用程式圖表上的 ASP.NET 應用程式專案。
Visual Studio 會將 .NET Web 服務提供者端點,加入至應用程式圖表中對應的 ASP.NET 應用程式定義。Visual Studio 也會將 .asmx 檔和 Web 服務類別檔加入至方案的專案中。如需詳細資訊,請參閱應用程式圖表上的 ASP.NET 應用程式概觀。
將 Web 方法加入至 ASP.NET 應用程式專案中的 Web 服務類別檔案。
Visual Studio 會將作業加入至應用程式圖表上 ASP.NET 應用程式定義的 .NET Web 服務提供者端點,然後您就可以在 [Web 服務細節] 視窗中檢視和編輯該作業。
如需詳細資訊,請參閱下列主題:
在 ASP.NET 應用程式定義上的 .NET Web 服務提供者端點之後,加入、變更或刪除 Web 服務類別檔案中的 Web 方法、Web 服務或 WSDL 相關屬性 (Attribute) 或屬性 (Property)。
Visual Studio 會在 [Web 服務細節] 視窗中修改對應的作業和任何適當的屬性。如需詳細資訊,請參閱 HOW TO:編輯 ASP.NET Web 服務的作業。
在應用程式組態檔中加入、編輯或刪除項目。
Visual Studio 會更新儲存於系統定義模型 (SDM) 文件和 [設定和條件約束編輯器] 中的設定。如需詳細資訊,請參閱系統定義模型 (SDM) 概觀和設定和條件約束編輯器。
針對自訂 Web 服務用戶端 Proxy 類別,或針對包含 Web 參考與自訂 Web 服務用戶端 Proxy 類別的類別庫,將項目加入至應用程式專案的組態檔。
自訂 Web 服務用戶端 Proxy 類別是手動建立的 Proxy 類別,與應用程式專案中的 Web 參考沒有關聯。都只有當您在應用程式組態檔加入了適當的項目時,適用於每個 Web 參考或自訂 Proxy 類別的 Web 服務消費者端點,才會出現在對應的應用程式定義中。
注意事項:如果應用程式圖表上存在適當的 .NET Web 服務提供者端點,則 Web 服務消費者端點與提供者端點之間就會出現連接。否則,新的外部 Web 服務就會出現,並連接至 Web 服務消費者端點。
如需詳細資訊,請參閱下列主題:
將 Web 參考加入至方案中的應用程式專案。
視應用程式圖表是否支援該類型的應用程式以及該 Web 參考指定的 Web 服務 URL 而定,將 Web 參考加入至應用程式專案,Visual Studio 便會將該應用程式連接至現有的 ASP.NET Web 服務,或是連接至新的或現有的外部 Web 服務。
如需詳細資訊,請參閱下列主題:
將資料庫連接項目加入至應用程式的組態檔。
例如,您可以將資料庫連接項目加入至 ASP.NET 應用程式的 Web.config 檔案,也可以加入至 Microsoft Windows 或是 Office 應用程式的 App.config 檔案。
Visual Studio 會將資料庫消費者端點加入至應用程式圖表上的應用程式。然後您就可以將該消費者端點連接至現有的外部資料庫,或是加入至圖表的新外部資料庫。您可以從資料庫消費者端點檢視或編輯資料庫連接設定。如需詳細資訊,請參閱 HOW TO:設定與外部資料庫的連接。
不支援反向工程的項目
[應用程式設計工具] 對下列分類中的項目只提供有限支援或是不提供任何支援:
應用程式專案
[應用程式設計工具] 不支援設計或直接表示類別庫。
您可以使用 ASP.NET Web 服務當做類別庫所實作之功能的外貌。這樣可讓 ASP.NET 應用程式所參考的類別庫,以及支援在應用程式圖表中實作的應用程式兩者之間彼此互動。如需詳細資訊,請參閱 HOW TO:從應用程式圖表上的應用程式參考類別庫。您還可以將適當項目加入至消費者應用程式的組態檔,以視覺化方式檢視對類別庫中 Web 服務和自訂 Web 服務用戶端 Proxy 類別的 Web 參考,做為 Web 服務消費者端點。如需詳細資訊,請參閱類別庫中的 Web 參考和自訂 Web 服務用戶端 Proxy 類別。
[應用程式設計工具] 不支援對以 FTP 或 Microsoft SharePoint 為基礎的網站進行反向工程。[應用程式設計工具] 只支援對在網際網路資訊服務 (IIS) 或 ASP.NET 程式開發伺服器上執行的網站專案進行反向工程。
ASP.NET Web 服務
.asmx 檔案中內嵌定義的 Web 服務類別定義。
如果與 ASP.NET Web 服務相關聯的 Web 方法,未經由不同程式碼檔或「程式碼後置」(Code-Behind) 檔案中的單一類別定義進行完整宣告,則 [Web 服務細節] 視窗就不會顯示與這些方法對應的作業。不過,您仍然可以在 ASP.NET 應用程式上以視覺化方式將 Web 服務呈現為 .NET Web 服務提供者端點,並將消費者應用程式連接至該端點。不過,.NET Web 服務提供者端點會出現警告圖示 (!)。如需詳細資訊,請參閱應用程式圖表疑難排解。
注意事項:程式碼後置檔案為程式語言特定的類別檔案,通常位於與 ASP.NET 應用程式相關聯之專案的應用程式程式碼資料夾中。
Web 方法是由 Web 服務類別所實作之介面方法上的屬性宣告。
-或-
類別擴充定義 Web 方法的基底類別。
在這些案例中,[Web 服務細節] 視窗僅會顯示 .asmx 檔案參考的類別所宣告之 Web 方法的對應作業。儘管 [Web 服務細節] 視窗不會顯示所有 Web 服務作業,則只要 .asmx 檔案存在應用程式專案中,.NET Web 服務提供者端點就會正確出現在 ASP.NET 應用程式中。此外,指向 Web 服務端點的連接也會正確地實作和設定。
定義 Web 服務的程式碼會包含多個繫結。
如果程式碼後置檔案將 Web 服務定義為具有不同繫結的 Web 方法,則 [Web 服務細節] 視窗僅會顯示與第一個繫結相關聯的作業。
注意事項:WebServiceBinding 屬性會在 Web 服務層級中宣告繫結。您可以將 SoapDocumentMethod 或 SoapRPCMethod 屬性設定為在 Web 方法層級中使用這些繫結。如需詳細資訊,請造訪線上 MSDN Library (英文)。
包含多個 WSDL 繫結的 WSDL 檔案或參考多個 Web 服務的 DISCO 檔案。
[分散式系統設計工具] 僅會支援包含單一 WSDL 繫結,以及參考單一 Web 服務之 DISCO 檔案的 WSDL 檔案。
如需詳細資訊,請參閱應用程式圖表上的 ASP.NET 應用程式概觀。
Active Template Library (ATL) 伺服器。
Web 服務加強功能 (WSE) SOAP 訊息堆疊。
如需這些項目的詳細資訊,請造訪線上 MSDN Library (英文)。