Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 在asp视图中显示图像_Asp.net_Asp.net Mvc_Image - Fatal编程技术网

Asp.net 在asp视图中显示图像

Asp.net 在asp视图中显示图像,asp.net,asp.net-mvc,image,Asp.net,Asp.net Mvc,Image,我在数据库字段中有一个图像标记,我想在MVC项目的索引和详细视图中显示该图像。目前,这两个页面只显示文本 该字段的视图代码为: <td> @Html.DisplayFor(modelItem => item.QRCode) </td> @DisplayFor(modeleItem=>item.QRCode) 如何对视图页面进行编码以显示链接指向的图像而不是链接文本 干杯, 凯文。根据此链接: 有两种可能性 改为编写一个控制器

我在数据库字段中有一个图像标记,我想在MVC项目的索引和详细视图中显示该图像。目前,这两个页面只显示文本

该字段的视图代码为:

    <td>
        @Html.DisplayFor(modelItem => item.QRCode)
    </td>  

@DisplayFor(modeleItem=>item.QRCode)
如何对视图页面进行编码以显示链接指向的图像而不是链接文本

干杯, 凯文。

根据此链接: 有两种可能性

改为编写一个控制器操作,给定映像id将返回此映像:

public ActionResult GetImage(int id)
{
    byte[] image = ... go and fetch the image buffer from the database given the id
    return File(image, "image/jpg");
}
然后:

<img src="@Url.Action("GetImage", "SomeController", new { id = item.Id })" alt="@item.CountryName" /> 

显然,现在在初始模型中,不需要图像属性。这将在随后负责该操作的控制器操作中检索

另一种可能是使用数据URI方案将图像嵌入为base64字符串,但并非所有浏览器都广泛支持:

<img src="data:image/jpg;base64,@(Convert.ToBase64String(item.Image))" alt="@item.CountryName" />

在这种情况下,不需要控制器操作,因为图像作为base64字符串直接嵌入到标记中


快乐的编码

以下代码适用于索引视图:

    <td>
        <img src="@Url.Content(item.QRCode)" alt="Image" />
    </td>

谢谢你的帮助

我现在遇到的问题是如何在详细信息页面中显示图像。我尝试过的代码是:

    <dd>
        <img src=@Model.QRCode alt="" />
    </dd>

“详细信息”页面上的其他列使用:

    <dd>
        @Html.DisplayFor(model => model.TestingFrequency)
    </dd>

@DisplayFor(model=>model.TestingFrequency)
但我已经尝试了许多代码组合,但我似乎无法让它工作


任何进一步的建议都将不胜感激。

谢谢,我会尝试一下。当前,该字段包含以下内容:那么我是否需要删除标记代码?抱歉,我应该解释一下,该链接是一个API调用,返回索引视图中使用的pngI:如果您存储的图像路径超出了您的使用范围。这将在视图中显示您的图像。破解它!简单地说:错误是由于少了几行。