项目中的虚拟目录
Virtual directory in the project
在站点下的 IIS
中,我可以创建一个具有不同物理路径的虚拟目录。
我能以某种方式在 ASP.NET MVC
项目中做同样的事情吗?比如添加一个链接到不同目录的目录。
问题是我在站点外有一些包含图像的文件夹。我将该文件夹添加到 IIS
站点下的 Dropbox
,它指向完全不同的位置:
现在我也在应用程序中使用这样的路径 Server.MapPath
:
"~/Dropbox/Dev/Product/Images"
当我在 IIS
中发布时,这一切都有效。但是我怎样才能在本地进行同样的调试呢?有没有办法将虚拟目录添加到我在 Visual Studio
中的项目?
我假设您是 运行 使用 IIS Express 的网站。您可以通过右键单击 IIS Express 托盘图标然后显示所有应用程序来找到您网站的 IIS Express 配置文件。 Select你的网站然后点击配置路径如截图所示
在配置文件中,找到您的网站 site
元素,然后您可以像这样添加新的 virtualDirectory
元素:
<site name="Website1" id="2">
<application path="/" applicationPool="website1">
<virtualDirectory path="/" physicalPath="D:\Projects/Website1" />
<virtualDirectory path="/Images" physicalPath="C:/Images" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:54558:localhost" />
/bindings>
</site>
这里可以看到添加了Images虚拟目录。
在站点下的 IIS
中,我可以创建一个具有不同物理路径的虚拟目录。
我能以某种方式在 ASP.NET MVC
项目中做同样的事情吗?比如添加一个链接到不同目录的目录。
问题是我在站点外有一些包含图像的文件夹。我将该文件夹添加到 IIS
站点下的 Dropbox
,它指向完全不同的位置:
现在我也在应用程序中使用这样的路径 Server.MapPath
:
"~/Dropbox/Dev/Product/Images"
当我在 IIS
中发布时,这一切都有效。但是我怎样才能在本地进行同样的调试呢?有没有办法将虚拟目录添加到我在 Visual Studio
中的项目?
我假设您是 运行 使用 IIS Express 的网站。您可以通过右键单击 IIS Express 托盘图标然后显示所有应用程序来找到您网站的 IIS Express 配置文件。 Select你的网站然后点击配置路径如截图所示
在配置文件中,找到您的网站 site
元素,然后您可以像这样添加新的 virtualDirectory
元素:
<site name="Website1" id="2">
<application path="/" applicationPool="website1">
<virtualDirectory path="/" physicalPath="D:\Projects/Website1" />
<virtualDirectory path="/Images" physicalPath="C:/Images" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:54558:localhost" />
/bindings>
</site>
这里可以看到添加了Images虚拟目录。