2012-02-18 57 views
0

我有一个需要在新的虚拟应用程序下创建虚拟目录的配置页面。用于创建此目录的方法对于IIS版本是不同的,IIS 7使用较新的管理控件进行安装。 IIS 7安装程序创建虚拟目录并添加预期的asp.net应用程序扩展。以下用于IIS 6的代码确实会创建虚拟目录,但它不会添加asp.net应用程序扩展,如下图所示。如何修改我的代码以确保预期的asp.net应用程序扩展被添加?在没有asp.net应用程序扩展的情况下创建的IIS 6虚拟目录

enter image description here

private void AddDirIis6(DirectoryEntry entry) 
{ 
    var child = entry.Children.Add("EditorControls", "IIsWebVirtualDir"); 
    child.Properties["Path"][0] = "directory\EditorControls"); 

    child.CommitChanges(); 
    entry.CommitChanges(); 
} 

回答

1

它看起来像脚本映射缺少为您的网站。您可以运行

aspnet_regiis -s W3SVC/1/ROOT/SampleApp1

与最后一个参数,而不是样品指定应用程序的一个或

aspnet_regiis -i

注意-i安装脚本映射IIS上的所有网站。

您需要为正在使用的框架的正确版本执行aspnet_regiis。执行此操作的说明位于aspnet_regiis工具的说明中: http://msdn.microsoft.com/en-us/library/k6h9cz8h(v=vs.100).aspx

+0

此虚拟目录位于另一个虚拟应用程序下。顶级应用程序具有预期的iis映射。虚拟目录不。我会尝试这个建议,但我想说清楚。 – 2012-02-20 19:59:49

+0

我试着运行这两个,我的虚拟仍然没有脚本映射 – 2012-02-21 01:37:34

+0

@JonEdiger你可以发布你的虚拟目录在IIS 6.0管理器中的主目录选项卡的屏幕截图? – 2012-02-21 01:40:47