我目前正在支持构建过程,我需要在iis6网站上设置Wilcard应用程序地图。
我目前正在使用SDC任务和MSBuild扩展包的混合物来做各种事情,但是当我尝试使用这两个框架设置通配符应用程序地图时,我遇到了障碍。
或许我在文档中错过了它,但我想知道是否有人知道如何设置这些。这里要明确的是你要在gui中设置这些:
我愿意接受设置此方法的其他方法,包括在必要时编写一些代码来执行此操作:)
答案 0 :(得分:3)
如果您使用Wix,则可以使用WixIISExtensions添加这些内容:
<iis:WebApplicationExtension CheckPath="no"
Script="yes"
Executable="[FRAMEWORKROOT]v2.0.50727\aspnet_isapi.dll"
Verbs="GET,HEAD,POST"/>
另外,正如post中所述,请尝试:
String strPath = "IIS://localhost/W3SVC/1/Root";
DirectoryEntry IISEntry = new DirectoryEntry(strPath);
PropertyValueCollection applicationMappings = IISEntry.Properties["ScriptMaps"];
applicationMappings.Add(@",%Windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,4,All");
IISEntry.CommitChanges();
答案 1 :(得分:1)
使用msbuild扩展包可以执行以下操作:
<MSBuild.ExtensionPack.Web.Iis6VirtualDirectory TaskAction="Create" Website="site" Name="vdir" Properties="ScriptMaps=*,$(MSBuildToolsPath)\aspnet_isapi.dll,1,All"/>
这将替换所有脚本映射,而不是添加一个。