Lesen von Excel-Dateien in ASP.NET MVC mit IronXL
Dieses Tutorial zeigt Entwicklern, wie man mit IronXL das Parsen von Excel-Dateien in ASP.NET MVC-Anwendungen implementiert.
Wie man Excel-Dateien in ASP.NET liest
- Installieren Sie die C#-Bibliothek, um Excel-Dateien in ASP.NET zu lesen
- Laden und Zugreifen auf das gezielte Blatt in der Excel-Datei
- Zugriff auf die
ToDataTable
-Methode und Rückkehr zuView
- Excel-Daten auf einer Webseite anzeigen durch Schleifen
- Iterieren Sie durch alle Daten und erstellen Sie daraus eine HTML-Tabelle
Ein ASP.NET-Projekt erstellen
Verwenden Sie Visual Studio 2022 (oder ähnliche Produktversionen), um ein neues ASP.NET-Projekt zu erstellen. Fügen Sie je nach Bedarf zusätzliche NuGet-Pakete und Quellcode für das jeweilige Projekt hinzu.
IronXL-Bibliothek installieren
Beginnen Sie noch heute mit der Verwendung von IronXL in Ihrem Projekt mit einer kostenlosen Testversion.
Nach der Erstellung des neuen Projekts müssen wir die IronXL-Bibliothek installieren. Folgen Sie den folgenden Schritten, um die IronXL-Bibliothek zu installieren. Öffnen Sie die NuGet-Paketmanager-Konsole und geben Sie den folgenden Befehl ein:
Install-Package IronXL.Excel
Excel-Datei lesen
Öffnen Sie den Standardcontroller in Ihrem ASP.NET-Projekt (z.B. HomeController) und ersetzen Sie die Index
-Methode mit dem folgenden Code:
public ActionResult Index()
{
WorkBook workbook = WorkBook.Load(@"C:\Files\Customer Data.xlsx");
WorkSheet sheet = workbook.WorkSheets.First();
var dataTable = sheet.ToDataTable();
return View(dataTable);
}
public ActionResult Index()
{
WorkBook workbook = WorkBook.Load(@"C:\Files\Customer Data.xlsx");
WorkSheet sheet = workbook.WorkSheets.First();
var dataTable = sheet.ToDataTable();
return View(dataTable);
}
Public Function Index() As ActionResult
Dim workbook As WorkBook = WorkBook.Load("C:\Files\Customer Data.xlsx")
Dim sheet As WorkSheet = workbook.WorkSheets.First()
Dim dataTable = sheet.ToDataTable()
Return View(dataTable)
End Function
In der Index
-Aktionsmethode laden wir die Excel-Datei mit IronXLs Load
. Der Pfad der Excel-Datei (einschließlich des Dateinamens) wird als Parameter an den Methodenaufruf übergeben. Als nächstes wählen wir das erste Excel-Blatt als Arbeitsblatt aus und laden die darin enthaltenen Daten in ein Datatable
-Objekt. Zuletzt wird die Datatable
an das Frontend gesendet.
Excel-Daten auf einer Webseite anzeigen
Das nächste Beispiel zeigt, wie die im vorherigen Beispiel zurückgegebene Datatable in einem Webbrowser angezeigt werden kann.
Die Excel-Arbeitsdatei, die in diesem Beispiel verwendet wird, ist unten abgebildet:

Excel-Datei
Öffnen Sie die index.cshtml (Indexansicht) und ersetzen Sie den Code durch den folgenden HTML-Code.
@{
ViewData ["Title"] = "Home Page";
}
@using System.Data
@model DataTable
<div class="text-center">
<h1 class="display-4">Welcome to IronXL Read Excel MVC</h1>
</div>
<table class="table table-dark">
<tbody>
@foreach (DataRow row in Model.Rows)
{
<tr>
@for (int i = 0; i < Model.Columns.Count; i++)
{
<td>@row [i]</td>
}
</tr>
}
</tbody>
</table>
@{
ViewData ["Title"] = "Home Page";
}
@using System.Data
@model DataTable
<div class="text-center">
<h1 class="display-4">Welcome to IronXL Read Excel MVC</h1>
</div>
<table class="table table-dark">
<tbody>
@foreach (DataRow row in Model.Rows)
{
<tr>
@for (int i = 0; i < Model.Columns.Count; i++)
{
<td>@row [i]</td>
}
</tr>
}
</tbody>
</table>
@
If True Then
ViewData ("Title") = "Home Page"
End If
'INSTANT VB WARNING: An assignment within expression was extracted from the following statement:
'ORIGINAL LINE: using System.Data model DataTable <div class="text-center"> <h1 class="display-4"> Welcome to IronXL Read Excel MVC</h1> </div> <table class="table table-dark"> <tbody> foreach(DataRow row in Model.Rows)
"display-4"> Welcome [to] IronXL Read Excel MVC</h1> </div> <table class="table table-dark"> (Of tbody) foreach(DataRow row in Model.Rows)
If True Then
'INSTANT VB WARNING: An assignment within expression was extracted from the following statement:
'ORIGINAL LINE: using System.Data model DataTable <div class="text-center"> <h1 class="display-4"> Welcome to IronXL Read Excel MVC</h1> </div> <table class
"text-center"> <h1 class="display-4"> Welcome [to] IronXL Read Excel MVC</h1> </div> <table class
[using] System.Data model DataTable <div class="text-center"> <h1 class
'INSTANT VB TODO TASK: Local functions are not converted by Instant VB:
' (Of tr) @for(int i = 0; i < Model.Columns.Count; i++)
' {
' <td> @row [i]</td>
' }
</tr>
End If
'INSTANT VB TODO TASK: The following line uses invalid syntax:
' </tbody> </table>
Der obige Code verwendet die von der Index
-Methode zurückgegebene Datatable
als Modell. Jede Zeile der Tabelle wird auf der Webseite unter Verwendung einer @for
-Schleife gedruckt, einschließlich Bootstrap-Formatierung zur Gestaltung.
Wenn Sie das Projekt ausführen, erhalten Sie die unten aufgeführten Ergebnisse.

Bootstrap-Tabelle