部署报告中的应用程序信息

更新:2007 年 11 月

在 XML 部署报告中,<Applications> 元素包含有关需要在分布式系统中部署的应用程序的信息。在对这些应用程序进行部署配置时需要此信息。此元素可能只包含该系统中应用程序的信息,也可能包含该系统中其他系统的信息。此元素还包含有关每个应用程序的设置、资源和终结点的信息。有关更多信息,请参见部署报告中的关键部分概述

例如,如果已为“默认”系统生成部署报告,则此元素包含该默认系统中的所有应用程序,但不包含其他系统。然而,默认系统表示如何在开发环境(而非部署环境)中连接和配置这些应用程序。有关更多信息,请参见从应用程序和系统关系图创建的部署定义

<Applications> 元素包含一个或多个用来标识部署报告中每个应用程序的 <Application> 元素。以下各节包含有关 <Application> 元素的更多信息:

  • Application Information in the <Application> Element

  • Paths to Application Files

  • Configuration File Settings for Applications

  • IIS Metabase Settings for ASP.NET Applications

  • Information about Application Connections

  • Web Service and Web Content Absolute URIs

&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 应用程序进行部署所需的 Internet 信息服务 (IIS) 元数据库设置。

  • 应用程序的连接信息。

  • Web 服务和 Web 内容提供方终结点的绝对 URI(部署位置)。

应用程序类型可确定部署报告中包括的文件类型、设置及其他信息。

应用程序文件的路径

部署报告包括部署应用程序所需文件的路径信息。例如,这些文件包括库文件、可执行文件、内容文件和配置文件。在查找用于部署的这些文件时需要此信息。但是,必须先指定用来复制这些文件的位置,才能生成部署报告。可以在用于生成部署报告的部署关系图上的 Destination Path 属性中指定此位置。还必须使用相应的属性来指定是否包括源文件、内容文件和二进制文件。这样,您便可以包括这些文件并从您指定的位置收集它们。生成部署报告时,生成进程将创建适当的项目目录并将这些文件复制到该位置。有关更多信息,请参见如何:生成部署报告

说明:

对于支持应用程序关系图上的实现的每个应用程序定义,在解决方案中只有一个项目与之对应。但是,在要部署的系统中可以多次使用该定义。例如,您的系统可能多次使用该定义,每次使用都有不同的安全设置并将部署到不同的服务器。部署报告将包括这些多次使用的情况。但是,生成进程将只为所有这些使用创建一个项目目录。因此,部署进程需要使用部署报告中的信息创建和配置每次使用。

对于部署报告中的每个 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”元素组合在一起,检索子目录或文件的完整路径。

说明:

为创建有效路径,可能需要在适当的位置添加反斜杠 (\)。

有关更多信息,请参见如何:在部署报告中查找部署输出文件的路径部署输出文件的位置和目录结构

应用程序的配置文件设置

在系统中每次使用应用程序时,需要用正确的部署设置更新配置文件(对于 ASP.NET 应用程序为 Web.config,对于 Windows 或 Office 应用程序为 App.config)。最初,配置文件中的设置表示开发环境(而非部署环境)中的应用程序配置。但是,可以从部署报告中检索部署所需的配置文件设置。

应用程序的 <Application> 元素包含一个名为“Directory”的 <Resource> 元素。有关更多信息,请参见Paths to Application Files。此“Directory”元素包含另一个名为“Configuration”的 <Resource> 元素。此“Configuration”元素包含用来标识部署所需的配置文件设置的 <Setting> 和 <Resource> 元素。有关更多信息,请参见如何:在部署报告中查找应用程序配置文件设置

说明:

部署报告中的配置文件设置应与它们在配置文件中的对应项具有相同的名称。但是,部署报告中用于显示设置的资源名称可能与配置文件中的对应部分不同。有关更多信息,请参见部署报告中的配置文件部分

ASP.NET 应用程序的 IIS 元数据库设置

ASP.NET 应用程序的 <Application> 元素包含一个名为“WebApplication”的 <Resource> 元素。此“WebApplication”元素包含说明部署所需的 IIS 元数据库设置的 <Setting> 元素。但是,有些设置的名称、值或类型与它们的 IIS 对应项不同,在目标服务器上进行配置之前需要转换。有关更多信息,请参见下列主题:

有关应用程序连接的信息

<Application> 元素对于应用程序上的每个终结点都包含有一个对应的 <Endpoint> 元素。当一个终结点连接到另一个终结点时,<Endpoint> 元素将包含一个名为“ConnectedToEndpoints”的 <Setting> 元素。可以使用“ConnectedToEndpoints”元素来标识连接到该终结点的所有终结点。“ConnectedToEndpoints”元素包含与连接的终结点的“InstanceId”属性相匹配的全局唯一标识符 (GUID)。<Endpoint> 元素中的其他 <Setting> 元素包含有关终结点设置的信息。

提示:

可通过在应用程序关系图或系统关系图(已通过其创建部署关系图)上选择终结点,查看这些设置。然后,在“设置和约束编辑器”中查看“应用程序终结点设置”节点。有关更多信息,请参见设置和约束编辑器

下面的示例包含对应于 Windows 应用程序上 Web 服务使用方终结点的“ConnectedToEndpoints”元素。此元素包含一个用来标识 ASP.NET Web 应用程序上连接的 Web 服务提供方终结点的 GUID。而 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 内容的部署位置来配置其使用方终结点。用来公开 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 或路径。

有关更多信息,请参见如何:在部署报告中查找 Web 服务和 Web 内容绝对 URI

提示:

可以查看 Web 服务或 Web 内容提供方终结点的设置,方法是在应用程序关系图上选择相应的 Web 服务或 Web 内容提供方终结点,并在“设置和约束编辑器”中查看“应用程序终结点设置”节点。可以查看网站终结点的设置,方法是在逻辑数据中心关系图上选择相应的网站终结点,并在“设置和约束编辑器”中查看“逻辑服务器终结点设置”节点。有关更多信息,请参见设置和约束编辑器

请参见

概念

使用部署报告进行的部署概述