0

我大部分的 url 都是从根开始写的(注意开头的斜线)。

<img src="/Content/Images/example.png" />

当我在 VS 中调试并在生产中发布时,一切正常。

现在我决定用我的移动设备在我的局域网上测试/调试网站。为此,我必须“使用本地 IIS Web 服务器”,因为端口 46918 由于某种原因被阻止。这迫使我指定一个虚拟目录,因此我的路径不再起作用。

由于我不想使用相对路径,有没有合适的方法在 asp.net mvc 中编写 url?

4

2 回答 2

2

使用 MVC,使用@Url.Content(...).

<img src="@Url.Content("~/Content/Images/example.png")" />

Url.Content()方法将找出您的应用程序位于 IIS 根目录下的位置,并相应地调整链接:

/Content/Images/example.png

或者

/SomeVirtualPath/Content/Images/example.png

您可以将其用于您需要的任何 URl(css 文件、javascript 文件、图像等)

于 2013-06-06T18:13:14.183 回答
1

当然,使用相对 URL 并让 ASP.NET 为您附加前缀:

<img src="@Url.Content("~/Content/Images/example.png")" />

在开发中,这将解决为/Content...在您的虚拟目录环境中您将获得/virtualdirectory/Content....

于 2013-06-06T18:13:54.253 回答