为了提供一些上下文,我在同一台服务器上发布了 3 个 Web 应用程序,每个应用程序都使用不同的应用程序池。
我想要实现的是生成部署包,其中包含在部署期间将应用程序链接到特定已创建的应用程序池的说明。
到目前为止,我在发布配置文件 xml 文件中添加了以下参数:
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<IncludeAppPool>True</IncludeAppPool>
<IncludeIisSettings>True</IncludeIisSettings>
...
此外,我在项目中添加了一个 Parameter.xml 文件,其中包含为要链接的应用程序池设置默认值的参数:
<?xml version="1.0" encoding="utf-8" ?>
<parameters >
<parameter name="Application Pool Name" description="Application Pool for this site" tags="" defaultValue="AppPoolNameXXX">
<parameterEntry kind="DeploymentObjectAttribute"
scope="application"
match="/application/@applicationPool" />
</parameter>
</parameters>
此配置按预期工作,但是,由于 IncludeIisSettings 参数,它需要在 Build Continuous 服务器(团队城市)中安装 IIS,我不喜欢这样。
我的理解(我可能对他的看法完全错误)是,无论您在参数文件中放置什么,都将应用于位于包内的 archive.xml 文件,该文件在部署期间用于设置已安装应用程序的信息。
因此,在应用程序池的情况下,如果archive.xml 没有“应用程序”标签,则该参数不起作用,因为没有什么可以覆盖。
由于 IncludeIisSettings 参数,现在生成了这个“应用程序”标签。
是否有另一种方法可以在没有 IIS 依赖关系的情况下在 archive.xml 上生成这个“应用程序”标签?
在此先感谢您的帮助。