Click here to Skip to main content
15,907,906 members
Please Sign up or sign in to vote.
4.00/5 (1 vote)
See more:
Hi,
I am using a generic handler to retrieve image from database.
i want multiple images to be displayed in a page. so i go for repeater control i dont know how to display all this image. so please help me.

Sample code:(This is my generic handler code)

public class showall : IHttpHandler 
{
    EHRS_DAL _objDAL = new EHRS_DAL();
    
    public void ProcessRequest (HttpContext context) 
    {
         if (context.Request.QueryString["ID"] != null)
         {
             try
             {
                 string ID = context.Request.QueryString["ID"].ToString();
                 //string imgno = context.Request.QueryString["to"].ToString();
                 //int No = Convert.ToInt32(imgno);
                 MySqlConnection connection = new MySqlConnection(ConfigurationManager.ConnectionStrings["constring"].ConnectionString);
                 connection.Open();
                 DataSet ds = new DataSet();
                 MySqlDataAdapter adap = new MySqlDataAdapter("select image,register_no from imagetable where file_type='image' and register_no ='" + ID + "'", connection);
                 adap.Fill(ds);
                 int count = ds.Tables[0].Rows.Count;
                 for (int i = 0; i < count; i++)
                 {
                    context.Response.BinaryWrite((Byte[])ds.Tables[0].Rows[i]["image"]);
                 }
                 connection.Close();
                 context.Response.End();  
             }
             catch
             {
             }
                  
        }
    }

    public bool IsReusable 
    {
        get 
        {
            return false;
        }
    }

    
}



I want to get image in repeater control.

code behind:
 protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
           id = Session["regno"].ToString();
           DataSet dset = new DataSet();
           connection.Open();
           MySqlDataAdapter adap = new MySqlDataAdapter("select register_no,image from imagetable where file_type='image' and register_no ='" + id + "'", connection);
           adap.Fill(dset);
           int totalcount = dset.Tables[0].Rows.Count;
           Repeater1.DataSource = dset.Tables[0];
           Repeater1.DataBind();
           connection.Close();
}


XML
<asp:Repeater ID="Repeater1" runat="server" onitemdatabound="Repeater1_ItemDataBound">
                                <ItemTemplate>
                                 <asp:ImageButton ID="ImageButton1" ImageUrl='<%#"showall.ashx?ID="+ Eval("register_no") %>' runat="server" />
                                </ItemTemplate>
                                </asp:Repeater>
Posted
Comments
kodeLogic 4-Jun-12 6:50am    
Hi Just put <%# Eval("image ") %> and concate it with a path.. Why are u using a handler ? you have the same query in your code behind.
parithi vr 4-Jun-12 23:49pm    
Thanks. i am using the handler to get the image but i don't know how to call that handler in repeater control.

1 solution

see an example here[^]
 
Share this answer
 

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



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900