MVC数据库图像和默认图像

时间:2013-11-26 22:48:30

标签: asp.net-mvc filecontentresult

从数据库中获得以下图片......

<img src="@Url.Action("GetLogo", "Logo", new { ID = 16})" />

和控制器......

public FileContentResult GetLogo(int ID)
{
    var GetImage = (from x in repository.GetClientLogo 
                    where x.ClientID == ClientID
                    select x).FirstOrDefault();

    ClientLogo clientLogo = GetImage;
    return File(clientLogo.ImageData, clientLogo.ImageMimeType);
}

这一切都正常,直到没有数据库记录 - 如果是这种情况,那么我想返回一个默认图像(例如<img src="../Images/NoLogo.jpg" />),但我遇到困难,因为上面的控制器返回{{ 1}}。

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:1)

public FileContentResult GetLogo(int ID)
{
    var GetImage = (from x in repository.GetClientLogo
                    where x.ClientID == ClientID
                    select x).FirstOrDefault();
    if (GetImage == null)
    {
      return File(Server.MapPath("/Images/NoLogo.jpg"), "image/jpeg");
    }

    ClientLogo clientLogo = GetImage;
    return File(clientLogo.ImageData, clientLogo.ImageMimeType);
}

当您找不到客户端的图像时,只需返回NoLogo文件