ASP.NET MVC5访问项目外的文件夹

时间:2015-08-01 18:36:18

标签: c# asp.net asp.net-mvc-5

我有两个ASP.NET MVC5应用程序:A和B. 两个站点都想访问名为C的文件夹。此文件夹位于这些项目之外。所以文件夹结构是:

- 的 /根

------ A 网站文件

------ B 网站文件

两个网站都需要

------ C 文件

(文件夹C主要包含图像。)

所以我想在网站A和网站B上显示文件夹C中的图像。

但是如果我将img标签的源属性设置为" / C /..."在网站A上,它意味着" / A / C /..."当然,不会找到该文件。

我怎样才能达到目标?

感谢您的帮助!:)

2 个答案:

答案 0 :(得分:0)

取决于放置C文件夹的位置。 如果它位于应用程序A和B之外,您可以创建另一个项目作为共享,并在此项目中包含您的C文件夹,然后分别在A和B中添加此C文件夹的引用。

答案 1 :(得分:0)

如果您将站点A作为虚拟目录而将站点B作为虚拟目录,并且两者都位于作为域的根目录的Web应用程序中。如果是这种情况,您可以为像您提到的图像这样的资源设置根的相对路径。

设置以/开头的根相对路径将起作用,因为它将指向根。但是如果你运行你的应用程序A使用它自己的域(因此不在root的域下)使用根相对路径将指向应用程序A的根,而不是指向站点B.

您可以通过在默认Web应用程序下将站点A设置为本地IIS上的虚拟目录来对此进行测试。 http://localhost可以访问默认的Web应用程序。如果虚拟目录名为SiteA,则可以使用http://localhost/SiteA与其联系。如果您使用以/开头的roort-relative路径,它将始终指向http://localhost。因此,在此设置中,您可以访问在http://localhost下提供的任何其他位置及其虚拟目录,包括SiteC(作为虚拟目录)。