使用Microsoft ASP.NET(MVC)从数据库中检索图像

时间:2017-04-23 00:39:00

标签: asp.net-mvc razor

我构建表单以将数据保存在数据库中,其他字段如新闻标题。当我想要检索数据库的所有字段并查看它时,我使用的代码是可行的,但是当图像文件被加载到数据库时如果图像未加载它将停止并且不起作用,并且并非所有新闻都有我的图像项目

<table class="table table-responsive table-bordered table-striped table-hover ">
        <tr>
            <th>
                @Html.DisplayNameFor(model => model.NewsTitle)
            </th>

            <th>
                @Html.DisplayNameFor(model => model.NewsImage)
            </th>
        </tr>

        @foreach (var item in Model)
        {
            <tr>
                <td>
                    @Html.DisplayFor(modelItem => item.NewsTitle)
                </td>
                <td>
                    @{
                        var base64 = Convert.ToBase64String(item.NewsImage);
                        var imgsrc = string.Format("data:image/jpg;base64,{0}", base64);

                    }
                    <img src='@imgsrc' style="max-width:100px;max-height:100px" />
                </td>

            </tr>
                        }
    </table>

1 个答案:

答案 0 :(得分:2)

  

并非所有新闻都有我的项目中的图像

我想如果没有可用的图片,那么NewsImage属性可能是null

所以你可以写下这段代码:

@{
    var imgsrc = "url_to_your_default_image"; // useful when image is not available
    if(item.NewsImage != null) 
    {
        var base64 = Convert.ToBase64String(item.NewsImage);
        imgsrc = string.Format("data:image/jpg;base64,{0}", base64);
    }
    <img src='@imgsrc' style="max-width:100px;max-height:100px" />
}