Get all the values from excel file by using linqtoexcel
12,922
Solution 1
Try this (expanding on @Sachu's comment to the question) -
public ActionResult ExcelRead()
{
string pathToExcelFile = ""
+ @"C:\MyFolder\ProjectFolder\sample.xlsx";
string sheetName = "Sheet1";
var excelFile = new ExcelQueryFactory(pathToExcelFile);
var getData = from a in excelFile.Worksheet(sheetName) select a;
string getInfo = String.Empty;
foreach (var a in getData)
{
getInfo += "Name: "+ a["Name"] +"; Amount: "+ a["Amount"] +">> ";
}
ViewBag.excelRead = getInfo;
return View();
}
Solution 2
Make the getDate as .ToList()
var getData = (from a in excelFile.Worksheet(sheetName) select a);
List<string> getInfo = new List<string>();
foreach (var a in getData)
{
getInfo.Add("Name: "+ a["Name"] +"; Amount: "+ a["Amount"] +">> ");
}
ViewBag.excelRead = getInfo;
return View();
Then pass this to the view and do a foreach loop with @ViewBag.excelRead
foreach (var data in @ViewBag.excelRead)
{
.....
}
Hope this helps
Author by
Shihan Khan
Updated on June 05, 2022Comments
-
Shihan Khan almost 2 years
I'm using
linqtoexcel
in myasp.net mvc 4
project to read an excel file & get all the values from there. But I'm only getting the values of last row. Here are my codes,Controller
public ActionResult ExcelRead() { string pathToExcelFile = "" + @"C:\MyFolder\ProjectFolder\sample.xlsx"; string sheetName = "Sheet1"; var excelFile = new ExcelQueryFactory(pathToExcelFile); var getData = from a in excelFile.Worksheet(sheetName) select a; foreach (var a in getData) { string getInfo = "Name: "+ a["Name"] +"; Amount: "+ a["Amount"] +">> "; ViewBag.excelRead = getInfo; } return View(); }
View
@ViewBag.excelRead
How can I get the values from all the rows? Need this help badly! Thanks.