Click here to Skip to main content
Rate this: bad
good
Please Sign up or sign in to vote.
See more: ASP.NET
Hello. for showing photo in my site. i am using Handler(.NET 3.5) to read from DB a and show it in DataList. But when i uploaded the site photos are shown slow.
Please look at the site:
 
http://omed-ltd.com/[^]
omed-ltd.com
 
and the code that i am using:
<%@ WebHandler Language="C#" Class="Handler" %>
 
using System;
using System.Web;
using System.Data.SqlClient;
public class Handler : IHttpHandler {
 
    SqlConnection myConnection;
    SqlCommand cmd;
    
    public Handler()
    {
        myConnection = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["myDB"].ConnectionString);
        cmd = new SqlCommand("", myConnection);
        myConnection.Open();
    }
    public void ProcessRequest (HttpContext context) {
        try
        {
            string sql = "Select TPImage,id,Image_Type from TProduct where Id=@Id";
            cmd.CommandText = sql;
            cmd.Parameters.Add("@Id", System.Data.SqlDbType.Int).Value =    context.Request.QueryString["Id"];
            cmd.Prepare();
            SqlDataReader dr = cmd.ExecuteReader();
            dr.Read();
            context.Response.ContentType = dr["Image_Type"].ToString();
            
            context.Response.BinaryWrite((byte[])dr["TPImage"]);
            //باید برای عکس یکی از این فایل ساخته شود تا که بتونی هر عکس رو جدا لود کرد.
            dr.Close();
            myConnection.Close();
        }
        catch (Exception ex)
        {
            //System.Windows.Forms.MessageBox.Show(ex.Message);
        }
    }
 
    public bool IsReusable {
        get {
            return false;
        }
    }
 
}
Thank you.
Posted 20-Jan-13 7:54am
Edited 20-Jan-13 7:58am
v2

1 solution

Rate this: bad
good
Please Sign up or sign in to vote.

Solution 1

1. Consider generating thumbnails for previews. On a link above to display preview about 100x100 pixels size you are spooling 1M+ pictures.
 
2. Imagine your website channel load if it becomes popular
 
3.Strictly saying, it is not recommended to store pictures of a such big size in the database.
 
4. consider supporting http caching as well.
  Permalink  

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
0 Nirav Prabtani 343
1 OriginalGriff 207
2 Mika Wendelius 185
3 CPallini 179
4 Sergey Alexandrovich Kryukov 176
0 Nirav Prabtani 398
1 OriginalGriff 292
2 Sergey Alexandrovich Kryukov 251
3 Mika Wendelius 185
4 Abhinav S 180


Advertise | Privacy | Mobile
Web01 | 2.8.140721.1 | Last Updated 20 Jan 2013
Copyright © CodeProject, 1999-2014
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100