大家好,最近在用asp.net学习做网站,配合使用的数据库是sql server 2005
现有一数据库DB中数据表menu有4列,其中一列(列名为pic)为image型,并且已成功插入图片
现用asp.net中一Gridview控件配置好数据表menu中的数据显示
可运行后image型的pic列不能正常显示图片,都显示System.Byte[]
搜索了一下知道是将图片二进制再反转换的问题,可是具体如何解决还来请教各位大侠!
是应该在xxx.aspx,或xxx.aspx.cs文件中写入何种代码,具体代码根据我的数据表名、列名怎么写(我用的是C#脚本);
还是用什么别的办法解决,求具体步骤。一定要使用Gridview控件
望指导,不胜感激~~~
现有一数据库DB中数据表menu有4列,其中一列(列名为pic)为image型,并且已成功插入图片
现用asp.net中一Gridview控件配置好数据表menu中的数据显示
可运行后image型的pic列不能正常显示图片,都显示System.Byte[]
搜索了一下知道是将图片二进制再反转换的问题,可是具体如何解决还来请教各位大侠!
是应该在xxx.aspx,或xxx.aspx.cs文件中写入何种代码,具体代码根据我的数据表名、列名怎么写(我用的是C#脚本);
还是用什么别的办法解决,求具体步骤。一定要使用Gridview控件
望指导,不胜感激~~~
解决方案 »
- 大家来看看我的存储过程有什么语法错误啊 sql server的
- 用Jquery取Table的tr对象
- iis6“所有未知的isapi拓展”无法启动!--急!
- 未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序
- 本地地址访问的怪现象
- 求救 数据列表问题
- asp.net1.1程序转换成asp.net20.后用的是.net framework2.0吗?
- 能用asp.net检测客户端是否安装了framework么?
- 非技术问题,请教大哥大姐我该去做游戏吗
- 我在读取存在oracle数据库种的文件(*.htm)时候,提示“Thread was being aborted.",但是文件可以正常读取,是什么问题?
- 问一个问题,如何更改网站前台模板?
- 在.ascx页面调用js 急……
<img src='showimage.aspx?id=<%#Eval("id")%>' >
showimage.aspx中,根据id查询数据库,显示图片.
谢谢高人,那这段代码写在哪里?web。config里?
写在页面里面 ,然后绑定你的gridview
谢谢,但具体操作还不是太懂,我是新手……是说我要创建一个新的页面叫showimage.aspx,
然后在有gridview空间的原来界面的.aspx文件中写入
<img src='showimage.aspx?id=<%#Eval("id")%>' >对么?
然后那个获取传过来的ID查询图片进行显示具体又怎么操作的,感谢进一步指点!
根据ID号传到该项页面.可以从数据库中找到该ID对应图片的二进制,将二进制转换成img图片,直接输出...
我刚才说的[验证码]你做过没有?去网上找找
System.IO.MemoryStream ms = new System.IO.MemoryStream(buf);
this.Response.ContentType = "image/Jpeg";
ms.Close();
================================================
<img src='img.aspx?id=<%#Eval("id")%>' >
<IMG src="a.aspx?id=1" align="absmiddle">
int Id=int.Parse(Request.QueryString["id"]);
using(SqlConnection conn=new SqlConnection())
{
conn.ConnectionString="";
string strSql="select * from Tb where Id='"+Id+"'";
SqlCommand cmd=new SqlCommand(strSql,conn) ;
conn.Open();
SqlDataReader reader=cmd.ExecuteReader();
if(reader.Read())
{
Response.ContentType = "application/octet-stream";
Response.BinaryWrite((Byte[])reader["Photo"]);
}
Response.End();
conn.Close();
}
或
Response.ContentType = "";
Response.OutputStream.Write((byte[])SqlReader["ImageData"], 0, (int)SqlReader["ImageSize"]);
Response.End();