Using ClosedXML and Excel.4.5 dll.
//Install-Package ClosedXML -Version 0.76.0
//https://www.nuget.org/packages/ClosedXML/0.76.0
//Install-Package ExcelDataReader -Version 2.1.2.3
//https://www.nuget.org/packages/ExcelDataReader/2.1.2.3
Html:
============
//Install-Package ClosedXML -Version 0.76.0
//https://www.nuget.org/packages/ClosedXML/0.76.0
//Install-Package ExcelDataReader -Version 2.1.2.3
//https://www.nuget.org/packages/ExcelDataReader/2.1.2.3
Html:
============
<tr> <td style="width: 112px;">@common.GetTranslations("File Name", LID)</td> <td>@Html.TextBox("Dfilename", "", new { type = "file", Class = "Dtext tht fs fel" })</td> <td><input type="submit" value="@common.GetTranslations("Upload file", LID)" id="btnuploadexcel" class="formBtn" onclick="Loader();" style="min-width: 130px !important; padding: 3px 0px !important; background-color:cadetblue; font-size: 15px !important;" /></td> </tr>
C# code
===============
using ClosedXML.Excel; using Excel;
public ActionResult Diamondfile(HttpPostedFileBase Dfilename) {
if (Dfilename != null && Dfilename.ContentLength > 0) { string Extension = Path.GetExtension(Dfilename.FileName); if (!(Extension == "csv")) { #region Excel File var attachedFile = Dfilename; IExcelDataReader excelReader; if (Extension.ToLower() == ".xls") excelReader = ExcelReaderFactory.CreateBinaryReader(attachedFile.InputStream); else excelReader = ExcelReaderFactory.CreateOpenXmlReader(attachedFile.InputStream); //In asp.net or vb.net
// excelReader = ExcelReaderFactory.CreateBinaryReader(attachedFile.FileContent) //Else // excelReader = ExcelReaderFactory.CreateOpenXmlReader(attachedFile.FileContent)
excelReader.IsFirstRowAsColumnNames = true; DataSet result = excelReader.AsDataSet(); System.Data.DataTable dtResult = result.Tables[0]; uploadexcelfile(dtResult); #endregion } else { //code here csv file } } else { TempData["Fileupload"] = "no"; } return View(); } ================================= public void uploadexcelfile(System.Data.DataTable dtResult) { if (dtResult.Rows.Count > 0) { string inputDataRead; string StockNumbers = string.Empty; string Stockexist = string.Empty; foreach (DataRow eachValue in dtResult.Rows) { //code here } } else { TempData["Fileupload"] = "no"; } }
==============================
No comments:
Post a Comment