在子虚拟应用程序中设置应用程序和资源文件夹

时间:2014-03-06 21:45:38

标签: asp.net iis-7

我希望使用下面的asp.net 4.0 Web应用程序结构,但不太确定如何实现我的结果,如下所述。处理路径问题需要什么配置才能引用它们。例如〜/ css / style.css需要深入网站。我知道我将不得不为RESOURCES创建一个帮助器 - 如果在一个单独的虚拟目录中工作,WebResourcePath(“images / image1.jpg”)将返回完整路径吗?

Default Web Site
    >SAR-GROUPS
        SARGROUPS_WEBSITE
        SARGROUPS_RESOURCES

所有网站文件,如aspx,js,css等普通网络文件都在WEBSITE文件夹中。 RESOURCES文件夹将包含其他文件,如pdfs,xml,txt,images和files。在部署期间不需要上载或更新这些文件,并且可以保持不变。当我部署WEBSITE时,我只需删除WEBSITE文件夹并再次复制SAR-GROUPS中的新预编译文件夹。我必须像这样部署,因为它是从运行的scrips自动部署,因此这是一个xcopy部署。

有没有人有良好做法或工作设置来实现这一目标。我不是在考虑替代方法,除非它无法完成或者其他方式对于自动构建更好。

由于

1 个答案:

答案 0 :(得分:2)

如果SARGROUPS_WEBSITE目录中的文件需要引用SARGROUPS_RESOURCES目录中的资源,为什么不在SARGROUPS_WEBSITE目录中创建SARGROUPS_RESOURCES虚拟目录?这样,您可以将SARGROUPS_RESOURCES虚拟目录指向磁盘上的物理位置,并删除SARGROUPS_WEBSITE的内容而不触及资源。

所以结构将是

Default Web Site
    >SAR-GROUPS
        SARGROUPS_WEBSITE
            SARGROUPS_RESOURCES

但物理结构可能是任何东西

然后你可以像

那样引用它们
~/SARGROUPS_RESOURCES/css/style.css

*未测试

修改

您完全不了解我的答案和/或虚拟文件夹。

物理结构示例:

D:\Inetpub\WEBSITE
D:\Inetpub\RESOURCES

IIS结构:

IIS Root -> Site (that is a website and points to D:\Inetpub\WEBSITE)
IIS Root -> Site > Resources (that is a virtual directory and points to D:\Inetpub\RESOURCES)