如果文件不存在,则显示默认图像

时间:2014-04-23 14:01:47

标签: c# .net

我试图在找不到给定图像时显示默认图像。正如我的代码现在,它始终显示默认图像。我可以不在Url.Content中使用File.Exists()吗?

这是我的代码:

@if (File.Exists(Url.Content("~/Content/img/" + item.name + ".jpg")))
{
    <img src="@Url.Content("~/Content/img/" + item.name + ".jpg")" alt="@item.longname" />
}
else
{
    <img src="@Url.Content("~/Content/img/default.png")" alt="@item.longname" />
}

2 个答案:

答案 0 :(得分:2)

您需要Server.MapPath喜欢:

File.Exists(Server.MapPath("~/Content/img/" + item.name + ".jpg"))

答案 1 :(得分:1)

首先,我建议将此代码移动到Controller或外部类中,以使其更具可读性。

使用Server.MapPath获取网址的真实文件名。

可以使用File.Exists检查该文件路径。