asp.net - 在转发器控件中显示来自 linq 数据源的图像

标签 asp.net mysql linq repeater

我有一个指向 asp.net 中转发器控件的 linq 数据源
我想显示存储在数据库表中的图像。

当我使用此代码时,我在其他表中有一个类别表和产品表

<% Eval("CategoryImage")%> .

它在浏览器中显示 System.byte[],当我使用带有 Eval(); 的 ASP 图像控件时,它会给我一个常见的损​​坏图像图标。

有人可以建议我一种通过linq数据源直接从mysql数据库本身插入图像的方法..
我怎样才能在堆栈溢出和asp标签中格式化html标签..

提前感谢帮助...

最佳答案

您可以使用此功能

 public Image byteArrayToImage(byte[] byteArrayIn)
 {
    MemoryStream ms = new MemoryStream(byteArrayIn);
    Image returnImage = Image.FromStream(ms);
    return returnImage;
 }

将字节数组转换为图像。

如果 Eval("CategoryImage") 中有字节数组,那么您也可以从 Eval 调用此函数。
作为

<%# byteArrayToImage(Eval("CategoryImage"))%>

未经测试,但应该可以工作。

编辑 1

这是一个很好的链接
argumentException was unhandled error when converting byte of array to image
How to convert byte array to image and display in datagrid?

关于asp.net - 在转发器控件中显示来自 linq 数据源的图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15174036/

相关文章:

c# - select new 中的 Linq where 子句

C# 将 SQL 查询转换为 LINQ

c# - 不允许和未经授权的 ASP.NET AJAX PUT 方法

c# - 将配置数据保存在类库外部

c# - RowUpdating GridView 显示旧值

PHP:一次性将 10.000 行插入 mysql 性能

ASP.NET Page.Cache 与 Page.Application 存储用于数据同步?

php - 连接 - 从一个表中获取行然后获取在另一个表中匹配的所有行?但第一个表匹配行不应重复

mysql查询组最新插入

c# - 在 ORM 中将 lambda 表达式转换为 SQL?