Here is my class (product.cs) where there is a way to insert an image:
public static void InsertProductIMG(byte[] image, string contentType) { string cs = "Data Source=(local);Initial Catalog=myApp;Integrated Security=True"; string comandoSql = "INSERT INTO [myApp].[dbo].[product] (image, ContentType) VALUES (@image, @contentType)"; using (SqlConnection conn = new SqlConnection(cs)) { conn.Open(); using (SqlTransaction trans = conn.BeginTransaction()) { SqlCommand cmd = new SqlCommand(comandoSql, conn, trans); SqlParameter[] parms = new SqlParameter[2]; parms[0] = new SqlParameter("@image", image); parms[1] = new SqlParameter("@contentType", contentType); foreach (SqlParameter p in parms) { cmd.Parameters.Add(p); } cmd.ExecuteNonQuery(); trans.Commit(); } } }
Here is the code behind the apsx page where I call the method above:
byte[] imageBytes = new byte[fupld.PostedFile.InputStream.Length]; product.InsertProductIMG(imageBytes, "image/jpeg");
Now I would like to know how I can display this image?
Should I read byte [] from sql (SELECT), convert to string, and therefore convert to byte []? And then convert to a bitmap (System.Drawing). But how do I display this bitmap on an aspx page?
I do not know how to do that. Please help !!:]
thanks
Note. In SQL Server, the image column is of type varbinary(MAX) .
source share