Refer the below code for your referance.
First You need to add imagepath column in Imagedemo Table
In first page Image is stored in folder also save ID,ImageName,Imagepath in Database.
In second page when i type Id value in text box and search it.It will display Image records in gridview as well as in ImageTag if any record find.
Firstpage.aspx
<form id="form1" runat="server">
<table>
<tr>
<td>
<asp:Label ID="lblid" runat="server" Text="Id"></asp:Label>
</td>
<td>
<asp:TextBox ID="txtid" runat="server"></asp:TextBox>
</td>
</tr>
<tr>
<td>
<asp:Label ID="lblname" runat="server" Text="Name:"></asp:Label>
</td>
<td>
<asp:TextBox ID="txtname" runat="server"></asp:TextBox>
</td>
</tr>
<tr>
<td>
</td>
<td>
<asp:FileUpload ID="fuDemo" runat="server" />
</td>
</tr>
<tr>
<td>
<asp:Button ID="btnsave" runat="server" CssClass="btn btn-primary" Text="Save" OnClick="btnsave_Click" />
</td>
<td>
</td>
</tr>
</table>
</form>
Firstpage.aspx.cs
protected void btnsave_Click(object sender, EventArgs e)
{
bool Insert;
try
{
if (fuDemo.HasFile)
{
string fileName = Path.GetFileName(fuDemo.PostedFile.FileName);
string filePath = ("~/Appli/" + fileName);
string strQuery = "INSERT INTO Imagedemo (ID,IMAGENAME,IMAGEPATH)" +
" VALUES (@ID,@Name, @ImagePath)";
SqlCommand cmd = new SqlCommand(strQuery);
cmd.Parameters.Add("@ID", SqlDbType.VarChar).Value = txtid.Text;
cmd.Parameters.Add("@Name", SqlDbType.VarChar).Value = txtname.Text;
cmd.Parameters.Add("@ImagePath", SqlDbType.VarChar).Value = filePath;
Insert = InsertUpdateData(cmd);
if (Insert == true)
{
fuDemo.PostedFile.SaveAs(Server.MapPath("~/Appli/") + fileName);
}
Response.Redirect(Request.Url.AbsoluteUri);
}
}
catch
{
}
}
private Boolean InsertUpdateData(SqlCommand cmd)
{
String strConnString = System.Configuration.ConfigurationManager.ConnectionStrings["constr"].ConnectionString;
SqlConnection con = new SqlConnection(strConnString);
cmd.CommandType = CommandType.Text;
cmd.Connection = con;
try
{
con.Open();
cmd.ExecuteNonQuery();
return true;
}
catch (Exception ex)
{
Response.Write(ex.Message);
return false;
}
finally
{
con.Close();
con.Dispose();
}
}
SecondPage.aspx
<form id="form1" runat="server">
<div>
<asp:TextBox ID="txtId" runat="server"></asp:TextBox>
<asp:Button ID="btnsearch" Text="Search" OnClick="Search" runat="server" />
<asp:GridView ID="gvImageDisplay" runat="server" AutoGenerateColumns="false" Visible="true">
<Columns>
<asp:BoundField DataField="ID" HeaderText="ID" />
<asp:BoundField DataField="Imagename" HeaderText="Imagename" />
<asp:BoundField DataField="imagepath" HeaderText="imagepath" />
<asp:ImageField DataAlternateTextField="imagepath" ControlStyle-Height="100px" ControlStyle-Width="100px"
DataImageUrlField="imagepath" HeaderText="IMAGE">
</asp:ImageField>
</Columns>
</asp:GridView>
<asp:Image ID="imgDisplay" runat="server" Width="500" Height="300" Visible="false"/>
</div>
</form>
SecondPage.aspx.cs
protected void Search(object sender, EventArgs e)
{
this.DisplayOnImageTag();
PopulateImagesInGrid();
}
protected void PopulateImagesInGrid()
{
string strConnString = ConfigurationManager.ConnectionStrings["constr"].ConnectionString;
SqlConnection con = new SqlConnection(strConnString);
string strquery = "SELECT ID,Imagename,imagepath,imagepath FROM Imagedemo Where ID='" + txtId.Text + "'";
SqlCommand cmd = new SqlCommand(strquery);
SqlDataAdapter sda = new SqlDataAdapter();
cmd.Connection = con;
sda.SelectCommand = cmd;
DataTable dt = new DataTable();
sda.Fill(dt);
gvImageDisplay.EmptyDataText = "No Records Found";
gvImageDisplay.DataSource = dt;
gvImageDisplay.DataBind();
}
protected void DisplayOnImageTag()
{
string strConnString = ConfigurationManager.ConnectionStrings["constr"].ConnectionString;
SqlConnection con = new SqlConnection(strConnString);
string strquery = "SELECT imagepath FROM Imagedemo Where ID='" + txtId.Text + "'";
SqlCommand cmd = new SqlCommand(strquery);
SqlDataAdapter sda = new SqlDataAdapter();
cmd.Connection = con;
sda.SelectCommand = cmd;
DataTable dt = new DataTable();
sda.Fill(dt);
if (dt.Rows.Count > 0)
{
imgDisplay.Visible = true;
imgDisplay.ImageUrl = dt.Rows[0]["imagepath"].ToString();
}
}