Introduction:
Here I will explain how to import data from excel to gridview in asp.net using EPPlus in C#.
Description:
- · Create a new C# console application project in Visual Studio. Download the EPPlus binaries from the Downloads section on the EPPlus CodePlex Site
- · Extract the files and add EPPlus.dll as a reference to your project.
Step 1: 
Write the blow code to Default.aspx page.
| 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
    <title>Untitled   Page</title> 
</head> 
<body> 
    <form id="form1" runat="server"> 
    <div> 
     <asp:FileUpload ID="FileUploadToServer" Width="300px"   runat="server"   /> 
        <asp:Button ID="btnUpload" runat="server" Text="Upload File" 
            ValidationGroup="vg" style="width: 99px" onclick="btnUpload_Click" /> 
        <br /> 
        <br /> 
        <asp:Label ID="lblMsg" runat="server" ForeColor="Green" Text=""></asp:Label> 
        <br /> 
     <asp:GridView ID="gvRecord" runat="server" EmptyDataText="No record found!"  
            Height="25px"> 
            <RowStyle Width="175px" /> 
            <EmptyDataRowStyle BackColor="Silver" BorderColor="#999999" BorderStyle="Solid"  
                BorderWidth="1px" ForeColor="#003300" /> 
            <HeaderStyle BackColor="#6699FF" BorderColor="#333333" BorderStyle="Solid"  
                BorderWidth="1px" VerticalAlign="Top" Width="200px"    Wrap="True"   /> 
        </asp:GridView> 
    </div> 
    </form> 
</body> 
</html> | 
Step 2: 
Write the blow code to Default.aspx.cs page.
| 
using System; 
using System.Collections; 
using System.Configuration; 
using System.Data; 
using System.Linq; 
using System.Web; 
using System.Web.Security; 
using System.Web.UI; 
using System.Web.UI.HtmlControls; 
using System.Web.UI.WebControls; 
using System.Web.UI.WebControls.WebParts; 
using System.Xml.Linq; 
using OfficeOpenXml; 
using System.IO; 
public partial class Epplus_New   : System.Web.UI.Page 
{ 
    protected   void Page_Load(object   sender, EventArgs e) 
    { 
        ImportToDataTable(); 
    } 
    public void ImportToDataTable() 
    { 
        DataTable   dt = new DataTable(); 
        string   filePath = Server.MapPath("Product1.xlsx"); 
        var   existingFile = new FileInfo(filePath); 
        using   (var package = new   ExcelPackage(existingFile)) 
        { 
            ExcelWorkbook workBook =   package.Workbook; 
            if   (workBook != null) 
            { 
                if   (workBook.Worksheets.Count > 0) 
                { 
                    ExcelWorksheet worksheet =   workBook.Worksheets.First(); 
                    ExcelCellAddress   startCell = worksheet.Dimension.Start; 
                    ExcelCellAddress endCell   = worksheet.Dimension.End; 
                    for   (int col = startCell.Column; col <=   endCell.Column; col++) 
                    { 
                        object col1Header1 = worksheet.Cells[1, col].Value; 
                        dt.Columns.Add("" + col1Header1 + ""); 
                    } 
                    for   (int row = startCell.Row + 1; row <=   endCell.Row + 1; row++) 
                    { 
                        DataRow dr = dt.NewRow(); 
                        int x = 0; 
                        for (int col =   startCell.Column; col <= endCell.Column; col++) 
                        { 
                            dr[x++] =   worksheet.Cells[row, col].Value; 
                        } 
                        dt.Rows.Add(dr); 
                        gvRecord.DataSource =   dt; 
                        gvRecord.DataBind(); 
                    } 
                } 
            } 
        } 
    } 
    protected   void btnUpload_Click(object   sender, EventArgs e) 
    { 
        string   FilePath = ConfigurationManager.AppSettings["FilePath"].ToString(); 
        string   filename = string.Empty; 
        if   (FileUploadToServer.HasFile) 
        { 
            string[]   allowdFile = { ".xls", ".xlsx" }; 
            string   FileExt = System.IO.Path.GetExtension(FileUploadToServer.PostedFile.FileName); 
            bool   isValidFile = allowdFile.Contains(FileExt); 
            if   (!isValidFile) 
            { 
                lblMsg.ForeColor =   System.Drawing.Color.Red; 
                lblMsg.Text = "Please upload only Excel"; 
            } 
            else 
            { 
                int   FileSize = FileUploadToServer.PostedFile.ContentLength; 
                if   (FileSize <= 1048576) 
                { 
                    filename = Path.GetFileName(Server.MapPath(FileUploadToServer.FileName)); 
                      FileUploadToServer.SaveAs(Server.MapPath(FilePath) + filename); 
                    string   filePath = Server.MapPath(FilePath) + filename; 
                } 
            } 
        } 
    } 
} | 
 
No comments:
Post a Comment