部署報告中的應用程式資訊

更新:2007 年 11 月

在 XML 部署報告中,<Applications> 項目包含需要部署在分散式系統中之應用程式的相關資訊。您需要這項資訊,才能針對部署來設定應用程式。這個項目所包含的資訊可能只是針對該系統中的應用程式,或者也可能是針對該系統中的其他系統。這個項目也包含每個應用程式之設定、資源和端點的相關資訊。如需詳細資訊,請參閱部署報告中的索引鍵區段概觀

例如,如果要針對「預設」系統而產生部署報告,則此項目會包含該預設系統 (而非其他系統) 中的所有應用程式。不過,預設系統代表這些應用程式在開發環境 (而非部署環境) 中的連接及設定方式。如需詳細資訊,請參閱從應用程式和系統圖表建立的部署定義

<Applications> 項目包含一或多個 <Application> 項目,可識別部署報告中的每個應用程式。以下各節會包含 <Application> 項目的詳細資訊:

  • <Application> 項目中的應用程式資訊

  • 應用程式檔案的路徑

  • 應用程式的組態檔設定

  • ASP.NET 應用程式的 IIS Metabase 設定

  • 應用程式連接的相關資訊

  • Web 服務和 Web 內容的絕對 URI

&lt;Application&gt; 項目中的應用程式資訊

下列範例包含 Windows 應用程式的 <Application> 項目。"Extends" 屬性 "Microsoft_WindowsApplication:WindowsApplication" 會識別 Windows 應用程式:

<Application Name="MyWinAppUse" Definition="MyWinAppDefinition:MyWinAppDefinition" Extends="Microsoft_WindowsApplication:WindowsApplication" InstanceId="ed22d434-f40d-48b1-bbec-0b4e93ad2a9f">
   ...
</Application>

在這個項目之內,可以找到下列資訊:

  • 部署所需之應用程式檔案的路徑。

  • 需要在應用程式組態檔中更新的設定。

  • ASP.NET 應用程式部署所需的網際網路資訊服務 (IIS) Metabase 設定。

  • 應用程式的連接資訊。

  • Web 服務和 Web 內容提供者 (Provider) 端點的絕對 URI (部署位置)。

應用程式類型會決定部署報告中所含的檔案類型、設定及其他資訊。

應用程式檔案的路徑

部署報告包含部署應用程式所需之檔案的路徑資訊。例如,這些檔案包含程式庫、可執行檔、內容檔和組態檔。您需要這項資訊,才能找到這些用於部署的檔案。不過,必須先指定複製這些檔案的位置,才能產生部署報告。您可以在用來產生部署報告的部署圖表上,在 Destination Path 屬性中指定此這個位置。您也必須使用對應的屬性來指定是否要包含原始程式檔 (Source File)、內容檔案和二進位檔案。這樣就可以包含這些檔案,並從指定的位置收集這些檔案。在產生部署報告時,產生處理會建立適當的專案目錄,並將檔案複製到該位置。如需詳細資訊,請參閱 HOW TO:產生部署報告

注意事項:

對於應用程式圖表上每個支援實作的應用程式定義,在方案中只會有一個專案存在;不過,在您所部署的系統中,該定義可能會有多個用法。例如,您的系統可能會包含多個具有不同安全性設定的用法,而這些用法也會部署到不同的伺服器。部署報告中會包含這些用法;不過,產生處理只會針對所有的用法建立一個專案目錄,因此,您的部署處理需要使用部署報告中的資訊來建立及設定每個用法。

對於部署報告中的每個 ASP.NET、Windows 或 Office 應用程式,<Application> 項目包含名為 "Directory" 的 <Resource> 項目。在 "Directory" 項目包含的 <Resource> 項目中,包含輸出位置的目錄以及複製到這些目錄之檔案的相關資訊。如需詳細資訊,請參閱部署輸出檔的位置和目錄結構

"Directory" 項目中的每個 <Resource> 項目都會參考輸出位置檔案系統路徑上的檔案或目錄。會參考目錄的 <Resource> 項目可能包含其他會參考子目錄的 <Resource> 項目;不過,所有會參考檔案的 <Resource> 項目都位於分葉層級。

注意事項:

<Resource> 項目群組的階層架構與方案中的專案結構相同;不過,代表相同層級之目錄的 <Resource> 項目的順序,可能不同於其資料夾在方案中或磁碟上的順序。此外,重新命名方案中的專案並不會變更它們在磁碟上的資料夾名稱;然而,在建立輸出位置上的專案目錄時,會使用磁碟上的專案資料夾名稱,而不是方案中的專案名稱,因此,輸出位置的專案目錄名稱可能會與方案中的專案名稱不同。

此外,每個代表目錄或檔案的 <Resource> 項目都包含名為 "Path" 的 <Setting> 項目。這個 "Path" 項目包含三個 <Facet> 項目:"Assigned"、"Parent" 和 "Current"。

下表包含這些項目的詳細資訊。

<Facet> 項目

描述

"Assigned"

包含部署報告之 Destination Path 屬性所指定的輸出位置路徑;不過,只有 "Directory" 項目中的 "Path" 項目會包含此值。

"Parent"

包含從專案目錄到子目錄或檔案之父目錄的路徑;不過,只有該子目錄或檔案的 "Path" 項目會包含此值。

注意事項:

如果專案擁有父目錄,則在 "Directory" 項目中,"Path" 項目的 "Parent" 項目不會包含此父目錄的路徑。

"Current"

包含從專案目錄到子目錄或檔案的路徑。專案目錄、子目錄或檔案的 "Path" 項目會包含此值。

因此,您可以從 "Directory" 項目中的 "Path" 項目將 "Assigned" 項目與子目錄或檔案的 "Current" 項目結合,藉此擷取子目錄或檔案的完整路徑。

注意事項:

為了建立有效的路徑,您可能需要視情況加入反斜線符號 (\)。

如需詳細資訊,請參閱 HOW TO:在部署報告中尋找部署輸出檔的路徑部署輸出檔的位置和目錄結構

應用程式的組態檔設定

您需要以正確的部署設定,針對系統中的每個應用程式用法更新組態檔案 (ASP.NET 應用程式為 Web.config,Windows 或 Office 應用程式則為 App.config)。開始時,組態檔案中的設定是代表開發環境 (而不是部署環境) 的應用程式組態;不過,您可以從部署報告擷取部署所需的組態檔案設定。

應用程式的 <Application> 項目包含名為 "Directory" 的 <Resource> 項目。如需詳細資訊,請參閱應用程式檔案的路徑。這個 "Directory" 項目包含另一個名為 "Configuration" 的 <Resource> 項目。這個 "Configuration" 項目包含識別部署所需之組態檔案設定的 <Setting> 和 <Resource> 項目。如需詳細資訊,請參閱 HOW TO:在部署報告中尋找應用程式組態檔設定

注意事項:

部署報告中的組態檔案設定與組態檔案中的對應項目具有相同的名稱;不過,在部署報告中其下出現設定的資源名稱,可能會與組態檔案中相對應的區段不同。如需詳細資訊,請參閱部署報告中的組態檔區段

ASP.NET 應用程式的 IIS Metabase 設定

ASP.NET 應用程式的 <Application> 項目包含名為 "WebApplication" 的 <Resource> 項目。這個 "WebApplication" 項目則包含 <Setting> 項目,描述部署所需的 IIS Metabase 設定;不過,某些設定名稱、值或類型會與其 IIS 對應項目不同,必須先進行轉譯才能在目標伺服器上進行設定。如需詳細資訊,請參閱下列主題:

應用程式連接的相關資訊

<Application> 項目會針對應用程式上的每個端點包含 <Endpoint> 項目。當端點連接到另一個端點時,<Endpoint> 項目會包含名為 "ConnectedToEndpoints" 的 <Setting> 項目。您可以使用 "ConnectedToEndpoints" 項目來識別與該端點連接的所有端點。"ConnectedToEndpoints" 項目包含全域唯一識別碼 (GUID),此識別碼會符合所連接端點的 "InstanceId" 屬性。<Endpoint> 項目中的其他 <Setting> 項目包含與端點設定相關的資訊。

秘訣

您可以在應用程式圖表或系統圖表上選取端點來檢視這些設定 (部署圖表會根據這些圖表建立)。接著在 [設定和條件約束編輯器] 中,檢視 [應用程式端點設定] 節點。如需詳細資訊,請參閱設定和條件約束編輯器

下列範例針對 Windows 應用程式上的 Web 服務消費者端點包含 "ConnectedToEndpoints" 項目。這個項目包含 GUID,可識別 ASP.NET Web 應用程式上已連接的 Web 服務提供者端點,而 Web 服務提供者端點的 <Endpoint> 項目則具有 "ConnectedToEndpoints" 項目,其中包含已連接之 Web 服務消費者端點的 GUID 值。

<Application Name="MyWinAppUse" Definition="MyWinAppDefinition:MyWinAppDefinition" Extends="Microsoft_WindowsApplication:WindowsApplication" InstanceId="6b36995a-a6cf-47d6-9dcb-679d07db23ef">
   <Endpoint Name="MyWebServiceConsumer" Definition="MyWinAppDefinition:MyWinAppDefinition.WebServiceConsumer1" Extends="Microsoft_Web:WebServiceClient" InstanceId="a18fb424-c1a4-49e3-b4af-e6d7e2e9d063"><Setting Name="ConnectedToEndpoints" Definition="System:Guid" State="Set" List="true"><Value>9c4e0dc0-a29d-4bb7-8061-a9d3e2075581</Value></Setting>
      ...
   </Endpoint>
...
</Application>
<Application Name="MyWebApp1" Definition="MyWebApp1:MyWebApp1" Extends="Microsoft_WebApplication:WebApplication" InstanceId="1a912802-d7f3-4b53-89a5-b8bc7f378411">
   ...
   <Endpoint Name="WebService1" Definition="MyWebApp1:MyWebApp1.WebService1" Extends="Microsoft_Web:WebService" InstanceId="9c4e0dc0-a29d-4bb7-8061-a9d3e2075581"><Setting Name="ConnectedToEndpoints" Definition="System:Guid" State="Set" List="true"><Value>a18fb424-c1a4-49e3-b4af-e6d7e2e9d063</Value></Setting>
      ...
   ...
   </Endpoint>
...
</Application>

Web 服務和 Web 內容的絕對 URI

您需要針對每個使用 Web 服務或 Web 內容的應用程式,使用該 Web 服務或 Web 內容的部署位置來設定消費者端點。公開 (Expose) Web 服務或 Web 內容之 ASP.NET 應用程式的 <Application> 項目會包含 <Endpoint> 項目。這個 <Endpoint> 項目包含 "Uri" <Setting> 項目,後者則包含三個 <Facet> 項目:"Relative"、"Base" 和 "Absolute"。

下表包含與這些項目相關的詳細資訊。

<Facet> 項目

描述

"Relative"

包含 Web 服務提供者端點的 Service URL 設定。此設定可以包含相對或絕對 Web 服務 URL。

-或-

包含 Web 內容提供者端點的 Relative Path 設定。此設定包含相對路徑,會參考應用程式根目錄以外位置的內容。

"Base"

包含網站端點的 URL 設定。此網站端點位在裝載 Web 服務或 Web 內容的 IIS Web 伺服器上。

"Absolute"

包含 Web 服務或 Web 內容提供者端點的絕對 URI。

注意事項:

如果 Service URL 或 Relative Path 設定包含相對 URL 或路徑,則此項目會結合 URL 設定和 Service URL 設定或 Relative Path 設定;不過,如果 Service URL 或 Relative Path 設定包含絕對 URL 或路徑,則此項目就會包含該絕對 URL 或路徑。

如需詳細資訊,請參閱 HOW TO:在部署報告中尋找 Web 服務和 Web 內容絕對 URI

秘訣

您可以在應用程式圖表上選取 Web 服務或 Web 內容提供者端點,然後在 [設定和條件約束編輯器] 中檢視 [應用程式端點設定] 節點,以檢視 Web 服務或 Web 內容提供者端點的設定。您可以在邏輯 Datacenter 圖表上選取網站端點,然後在 [設定和條件約束編輯器] 中檢視 [邏輯伺服器端點設定] 節點,以檢視網站端點的設定。如需詳細資訊,請參閱設定和條件約束編輯器

請參閱

概念

使用部署報告進行部署概觀