从数据库读取图片到picturebox,该怎么解决

从数据库读取图片到picturebox
我在数据库用image保存图片   保存的时候是用二进制   现在要读取出来
private void button5_Click( object sender, EventArgs e )
        {
            DataTable da = SqlHelper.ExecuteDataTable( "SELECT A2 FROM A");
            Byte[] mybyte = (Byte[])da.Rows[0]["A2"];
            MemoryStream ms = new MemoryStream( );//此处报错1
            for (int i = 0; i < mybyte.Length; i++)
            {if (mybyte.Length - i > 100000)
                {
                    ms.Write( mybyte, i, 100000 );
                    i += 100000;
                }
                //ms.Write( mybyte, 10000, mybyte.Length );
                else
                {
                    ms.Write( mybyte, i, mybyte.Length - i );
                    i += mybyte.Length - i;                
                }              
            }          
            ms.Position = 0;
            ms.Seek( 0, SeekOrigin.Begin );
            Image img = Image.FromStream( ms,true );//此处报错2
            pictureBox1.Image = img;
        }

报错1:从数据库读取图片到picturebox,该怎么解决
报错2:从数据库读取图片到picturebox,该怎么解决
------解决思路----------------------
存储的是不是binary类型?
------解决思路----------------------
从 byte[]到Image很简单啊

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

来自:
http://www.codeproject.com/Articles/15460/C-Image-to-Byte-Array-and-Byte-Array-to-Image-Conv

你要确保从数据库读出的是正确的
可以 在Byte[] mybyte = (Byte[])da.Rows[0]["A2"];之后,把byte[] 写到文件中看一看文件内容。