显示Base64图像

时间:2014-09-22 08:06:22

标签: c# asp.net

我将图像存储为Base64,但是我无法显示它们。我正在使用ASP.NET,这是代码的一部分:

int visitorId = int.Parse(Request.QueryString["id"]);
classes.Visitor visitor = new classes.Visitor(visitorId, PageExtension_CurrentUser.Community.Id);

StringBuilder sb = new StringBuilder();
sb.Append("<table>");
sb.Append(@"<tr><td colspan=""2""><div style=""width:320px; height:240px; border: 1px dotted #000;"">");

if (visitor.VisitorImage != "")
{
    sb.Append(@"<img style=""width:320px; height:240px;"" alt="" src=""data:image/jpeg;base64, " + visitor.VisitorImage + @""" />");
}
else
{
    sb.Append(@"No image");
}

sb.Append("</div></td></tr>");

sb.Append("<tr><td style='width:200px;'><b>Visitor Name</b></td><td>" + visitor.GetFullname() + "</td></tr>");
sb.Append("<tr><td><b>Company/Address</b></td><td>" + visitor.AddressOrCompany + "</td></tr>");

有趣的是,是:

  1. 显示带有虚线边框的DIV,但不显示图像。
  2. 剩下的没有打印出来??
  3. 图像数据很好,我已经在http://base64online.org/decode/上测试了它,我看到图片即用于测试。
  4. 我假设它是数据,但为什么没有显示?有什么想法吗?

1 个答案:

答案 0 :(得分:0)

这行代码错误:

sb.Append(@"<img style=""width:320px; height:240px;"" alt="" src=""data:image/jpeg;base64, " + visitor.VisitorImage + @""" />");

应该是:

sb.Append(@"<img style=""width:320px; height:240px;"" alt="""" src=""data:image/jpeg;base64, " + visitor.VisitorImage + @""" />");