图片转换成byte[]存在数据库里的,现在从数据库里读出来,显示在asp:Image空间上,怎么写?
小弟不才,先谢谢大家!

解决方案 »

  1.   

    设置Image的ImageUrl属性:
    Image.ImageUrl = "../SysConfig/GetImageName.aspx?ID="+dr["JHQUserID"].ToString();在GetImageName.aspx页面:
    private void Page_Load(object sender, System.EventArgs e)
    {
    if( Request.QueryString["ID"]!=null)
    {
    SqlConnection conn =null ;
    SqlCommand cmd =null ;
    SqlDataReader dr = null ;
    string sql ;
    try
    {
    int imgId = int.Parse(Request.QueryString["ID"]);//imgId为图片的id
    //建立数据库连接

    conn = new SqlConnection(new ConStr().CnnStr);
    //数据库操作语句
    sql = "  " ;
    sql = "select ImageName from WebUser where ID = @ID and ImageName is not null";
    cmd = new SqlCommand(sql,conn);
    cmd.Parameters.Add(new SqlParameter("@ID",SqlDbType.Int,4));
    cmd.Parameters["@ID"].Value = imgId;
    conn.Open();//打开数据库连接
    dr = cmd.ExecuteReader();//读出数据
    if( dr.Read() )//读一行
    {
    //设定输出文件的类型
    Response.ContentType="application/octet-stream";
    //输出图片文件二进制数据
    Response.BinaryWrite((byte[])dr["ImageName"]) ;
    Response.End();
    dr.Close();
    conn.Close();
    }
    else
    {
    Response.Write("No Image!") ;
    Response.End() ;
    }
    }
    catch(Exception ex)
    {
    Alert("获取用户签名失败:——"+ex.Message.ToString() ,Page ) ;
    }
    finally
    {
    if(cmd!=null)
    cmd.Dispose();
    if(dr!=null)
    dr.Close();
    if(conn!=null)
    conn.Close();
    }
    }
    }
      

  2.   

    39364250--Asp.net(C#)高手交流群(高级群)!欢迎高手加盟!
      

  3.   

    看我的这篇文章,里面说的很详细SqlDataReader 操作 SqlServer image 列的一些实用方法