title: How can I display an image from SQL Server using ASP.NET?
body: <p>Here is my class (product.cs) where is the method to insert the image:</p>
  
  <pre><code>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();
         }
      }
  }
  </code></pre>
  
  <p>Here is the code behind of the apsx page where I call the method above:</p>
  
  <pre><code>byte[] imageBytes = new byte[fupld.PostedFile.InputStream.Length];
  product.InsertProductIMG(imageBytes, "image/jpeg");//product is the class where the method is
  </code></pre>
  
  <p>Now I'd like to know how can I display this image?</p>
  
  <p>Would I have to read the byte[] from sql (SELECT), convert to string and so convert to byte[]? And after do that convert to bitmap (System.Drawing). But how I show this bitmap in a aspx page?</p>
  
  <p>I've no idea how to do it. Please help!! :]</p>
  
  <p>Thanks</p>
  
  <p>Obs.: In SQL Server, the column <code>image</code> is of type <code>varbinary(MAX)</code>.</p>