Html Code:-
<asp:GridView ID="gvCustomers" runat="server" AutoGenerateColumns="false" OnPageIndexChanging="OnPageIndexChanging"
AllowPaging="true" PageSize="10">
<Columns>
<asp:BoundField DataField="Date" HeaderText="Date" />
<asp:BoundField DataField="Name" HeaderText="Name" />
<asp:BoundField DataField="Qualification" HeaderText="Qualification" />
<asp:BoundField DataField="areaofinterest" HeaderText="areaofinterest" />
<asp:BoundField DataField="yearofexperience" HeaderText="yearofexperience" />
<asp:BoundField DataField="Mobile" HeaderText="Mobile" />
<asp:BoundField DataField="EmailID" HeaderText="EmailID" />
<asp:BoundField DataField="Address" HeaderText="Address" />
<asp:BoundField DataField="Country" HeaderText="Country" />
<asp:BoundField DataField="City" HeaderText="City" />
<asp:BoundField DataField="state" HeaderText="state" />
<asp:TemplateField HeaderText="Resume">
<ItemTemplate>
<asp:LinkButton ID="lnkResume" runat="server" Text='<%#Eval("Resume") %>' OnClick="Download"></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
C# Code:-
protected void Page_Load(object sender, EventArgs e)
{
if (!this.IsPostBack)
{
this.BindGrid();
}
}
protected void Download(object sender, EventArgs e)
{
string filePath = (sender as LinkButton).Text;
if (File.Exists(filePath))
{
string fileName = Path.GetFileName(filePath);
Response.Clear();
Response.Buffer = true;
Response.AddHeader("content-disposition", "attachment;filename=" + fileName);
Response.Charset = "";
Response.ContentType = "application/vnd.ms-word ";
Response.WriteFile(filePath);
Response.Flush();
Response.End();
}
else
{
Page.ClientScript.RegisterStartupScript(this.GetType(), "script", "<script type='text/javascript'>alert('file is not present');</script>");
}
}
protected void OnPageIndexChanging(object sender, GridViewPageEventArgs e)
{
this.gvCustomers.PageIndex = e.NewPageIndex;
this.BindGrid();
}
private void BindGrid()
{
using (DataSet ds = new DataSet())
{
ds.ReadXml(Server.MapPath("~/Files/Registrations.xml"));
this.gvCustomers.DataSource = ds;
this.gvCustomers.DataBind();
}
}
Namespaces:-
using System;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.IO;