In order to show image from database to webform first add an image control in webpage.
<asp:Image ID="imgStudentImage" runat="server" Height="157px" Width="160px" />
Then add new webform to read image from database for example displayimage.aspx
and in code behind model write the following code.
public string str = //your string
public SqlConnection conn;
public SqlCommand sql = new SqlCommand();
public SqlDataReader dr;
public string strSQL;
protected void Page_Load(object sender, EventArgs e)
{
conn = new SqlConnection(str);
conn.Open();
long id = Convert.ToInt64(Request.QueryString["mId"]);
strSQL = "";
strSQL = strSQL + " SELECT snap from StudentPicture ";
strSQL = strSQL + " WHERE IsOdl='true' and (Convert(Varchar(50),AdmissionId) = '" + id + "' or (Convert(Varchar(50),RegisterationNumber)='" + id + "'))";
/**/
sql = new SqlCommand(strSQL, conn);
dr = sql.ExecuteReader(CommandBehavior.CloseConnection);
if (dr.Read())
{
Response.ContentType = "image/gif";
Response.BinaryWrite((byte[])dr["snap"]);
}
else
{
System.Drawing.Image img1 = DrawImage();
byte[] myarray = imageToByteArray(img1);
Response.Buffer = true;
Response.Charset = "";
Response.Cache.SetCacheability(HttpCacheability.NoCache);
Response.ContentType = "image /png";
Response.AddHeader("content-disposition", "attachment;filename="
+ "imagenotfound.png");
Response.BinaryWrite(myarray);
Response.Flush();
Response.End();
}
conn.Close();
}
public byte[] imageToByteArray(System.Drawing.Image imageIn)
{
MemoryStream ms = new MemoryStream();
imageIn.Save(ms, System.Drawing.Imaging.ImageFormat.Gif);
return ms.ToArray();
}
public System.Drawing.Image DrawImage()
{
System.Drawing.Image bitmap = new System.Drawing.Bitmap(100, 100);
System.Drawing.Graphics graphics = System.Drawing.Graphics.FromImage(bitmap);
graphics.DrawString("No Image Found", new System.Drawing.Font("Tahoma", 10), System.Drawing.Brushes.White, new System.Drawing.PointF(0, 0));
return bitmap;
}
And now in pageload of webpage where image is to be shown do the following code to showimage
imgStudentImage.ImageUrl = "DisplayImage.aspx?mId=" + idfromfrmsearchstudent;
Done !! :)
<asp:Image ID="imgStudentImage" runat="server" Height="157px" Width="160px" />
Then add new webform to read image from database for example displayimage.aspx
and in code behind model write the following code.
public string str = //your string
public SqlConnection conn;
public SqlCommand sql = new SqlCommand();
public SqlDataReader dr;
public string strSQL;
protected void Page_Load(object sender, EventArgs e)
{
conn = new SqlConnection(str);
conn.Open();
long id = Convert.ToInt64(Request.QueryString["mId"]);
strSQL = "";
strSQL = strSQL + " SELECT snap from StudentPicture ";
strSQL = strSQL + " WHERE IsOdl='true' and (Convert(Varchar(50),AdmissionId) = '" + id + "' or (Convert(Varchar(50),RegisterationNumber)='" + id + "'))";
/**/
sql = new SqlCommand(strSQL, conn);
dr = sql.ExecuteReader(CommandBehavior.CloseConnection);
if (dr.Read())
{
Response.ContentType = "image/gif";
Response.BinaryWrite((byte[])dr["snap"]);
}
else
{
System.Drawing.Image img1 = DrawImage();
byte[] myarray = imageToByteArray(img1);
Response.Buffer = true;
Response.Charset = "";
Response.Cache.SetCacheability(HttpCacheability.NoCache);
Response.ContentType = "image /png";
Response.AddHeader("content-disposition", "attachment;filename="
+ "imagenotfound.png");
Response.BinaryWrite(myarray);
Response.Flush();
Response.End();
}
conn.Close();
}
public byte[] imageToByteArray(System.Drawing.Image imageIn)
{
MemoryStream ms = new MemoryStream();
imageIn.Save(ms, System.Drawing.Imaging.ImageFormat.Gif);
return ms.ToArray();
}
public System.Drawing.Image DrawImage()
{
System.Drawing.Image bitmap = new System.Drawing.Bitmap(100, 100);
System.Drawing.Graphics graphics = System.Drawing.Graphics.FromImage(bitmap);
graphics.DrawString("No Image Found", new System.Drawing.Font("Tahoma", 10), System.Drawing.Brushes.White, new System.Drawing.PointF(0, 0));
return bitmap;
}
And now in pageload of webpage where image is to be shown do the following code to showimage
imgStudentImage.ImageUrl = "DisplayImage.aspx?mId=" + idfromfrmsearchstudent;
Done !! :)
Comments
Post a Comment