我希望使用下面的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部署。
有没有人有良好做法或工作设置来实现这一目标。我不是在考虑替代方法,除非它无法完成或者其他方式对于自动构建更好。
由于
答案 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)