将Url.Content与半相对URL一起使用

时间:2011-03-16 21:08:30

标签: asp.net-mvc razor

我将图像的位置存储在我的数据库中的MVC应用程序中...但我只存储部分位置。例如:

/headers/image1.jpg
/headers/image2.jpg

图像实际存储在以下文件夹中:

~/content/images/headers/image1.jpg
~/content/images/headers/image1.jpg

在我看来,我想做这样的事情:

<img src="@Url.Content("~/content/images") + Model.ImageUrl" />

我该怎么做?

2 个答案:

答案 0 :(得分:45)

做吧!

<img src="@Url.Content("~/content/images" + Model.ImageUrl)" />

<强>更新

从ASP.NET MVC 4开始,直接在HTML中使用波形符号URL是有效的,因为Razor View引擎将解析URL。像这样:

<img src="~/content/images/@Model.ImageUrl" />

答案 1 :(得分:0)

您可以编写扩展方法,将ImageUrl与已配置的路径组合到内容目录。

<img src="@Model.ImageUrl.ToRelative()" alt="@Model.ImageAlt" />

PS
记得关于alt标签。 ;)