Check this sample
<asp:FileUpload ID="FileUpload1" runat="server" />
<asp:Button ID="btnUpload" runat="server" Text="Upload" OnClick = "Upload" />
<hr />
<asp:Panel ID = "Panel1" runat = "server" Visible = "false" >
<asp:Image ID="Image1" runat="server"/>
<br />
<asp:Button ID="btnSave" runat="server" Text="Save" OnClick = "Save" />
<asp:Button ID="btnCancel" runat="server" Text="Cancel" OnClick = "Cancel" />
</asp:Panel>
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
Session["Image"] = null;
}
}
protected void Upload(object sender, EventArgs e)
{
Session["Image"] = FileUpload1.PostedFile;
Stream fs = FileUpload1.PostedFile.InputStream;
BinaryReader br = new BinaryReader(fs);
byte[] bytes = br.ReadBytes((Int32)fs.Length);
string base64String = Convert.ToBase64String(bytes, 0, bytes.Length);
Image1.ImageUrl = "data:image/png;base64," + base64String;
Panel1.Visible = true;
}
protected void Save(object sender, EventArgs e)
{
HttpPostedFile postedFile = (HttpPostedFile)Session["Image"];
postedFile.SaveAs(Server.MapPath("~/Uploads/") + Path.GetFileName(postedFile.FileName));
Response.Redirect(Request.Url.AbsoluteUri);
}
protected void Cancel(object sender, EventArgs e)
{
Response.Redirect(Request.Url.AbsoluteUri);
}