为何byte[]通过img的src展示时显示System.Byte[],图片无法正常显示?
解决byte[]图片无法通过dataURL正常渲染的问题
你现在的问题是直接把byte数组拼进img的src字符串里了——在C#里,byte数组直接ToString()会返回System.Byte[],这就是页面显示这个内容、图片加载失败的原因。
正确操作是把byte数组转换成Base64编码的字符串,再组合成标准的dataURL格式:
后端处理(比如ASP.NET):
// 假设你的图片byte数组是imageBytes string base64Str = Convert.ToBase64String(imageBytes); string imgSrc = $"data:image/png;base64,{base64Str}";把生成好的
imgSrc传给前端,绑定到img标签的src属性即可。如果是在Blazor这类前端框架里直接处理:
同样调用Convert.ToBase64String把byte数组转成Base64字符串,再拼接成完整的dataURL赋值给src。
看你代码里应该是直接用了item.ImageData(byte数组)来拼接字符串,换成上面的转换逻辑就能正常显示图片了。
内容的提问来源于stack exchange,提问作者Alexander Nedelchev
相关产品推荐
相关产品推荐

