Test in einer Live-Umgebung
Test in der Produktion ohne Wasserzeichen.
Funktioniert überall, wo Sie es brauchen.
Suchen Sie nach einer Möglichkeit, Daten mit Razor Pages in eine Excel-Datei zu exportieren? In diesem Artikel erfahren Sie, wie Sie IronXL for .NET verwenden können.
CreateWorkSheet
methode zum Erstellen von ArbeitsblattIronXL ist eine .NET-Bibliothek für die Arbeit mit Excel-Dateien. Es baut auf dem OpenXML SDK auf und bietet eine einfache API zum Lesen, Schreiben und Bearbeiten von Excel-Tabellen. IronXL kann in einer Vielzahl von .NET-Anwendungen eingesetzt werden, darunter Webanwendungen, Desktopanwendungen und Konsolenanwendungen. IronXL bietet eine Reihe von Funktionen für die Arbeit mit Excel-Dokumenten, darunter die Möglichkeitlesen unddaten schreiben zu einzelnen Zellen, erstellen Diagramme und Grafiken und führenkomplexe Berechnungen. Es unterstützt auch erweiterte Excel-Funktionen wie Pivot-Tabellen,bedingte Formatierungund Datenvalidierung.
Der Export von Daten in Excel- und CSV-Dateien ist eine häufige Aufgabe in der Webentwicklung, die mit Razor und IronXL leicht zu bewältigen ist. Mit IronXL können Entwickler auf einfache Weise Excel-Tabellen erstellen und diese in einer Datei oder einem Stream speichern. Mit Razor können dann dynamische Inhalte erstellt werden, die Links zu den Excel-Dokumenten enthalten, so dass die Benutzer sie direkt von der Webseite herunterladen können. Das CSV-Dateiformat kann auch mit IronXL generiert und in ähnlicher Weise mit Razor heruntergeladen werden. Dies erleichtert die Erstellung von Berichten und anderen datengesteuerten Inhalten, die leicht mit anderen geteilt werden können. Insgesamt bietet die Kombination von Razor und IronXL for .NET Core Razor Pages ein leistungsstarkes Toolset für Webentwickler, die dynamische, datengesteuerte Webseiten erstellen möchten.
Bevor Sie Razor in Visual Studio verwenden, sollten Sie einige Voraussetzungen erfüllen. Hier sind einige der wichtigsten davon:
Als IronXL-Benutzer müssen Sie Visual Studio auf Ihrem Computersystem installiert haben. Sie können Visual Studio Community kostenlos von der offiziellen Website von Microsoft herunterladen.
Sie müssen auch .NET Core SDK auf Ihrem Computer installiert haben. Sie können die neueste Version von .NET Core SDK von der offiziellen Microsoft-Website herunterladen.
Um ein neues Visual Studio-Projekt zu erstellen, gehen Sie folgendermaßen vor:
Öffnen Sie Visual Studio.
Klicken Sie im Startfenster auf "Neues Projekt erstellen", oder klicken Sie in der Menüleiste auf "Datei" > "Neu" > "Projekt".
Startfenster von Visual Studio
Wählen Sie den Projekttyp, den Sie erstellen möchten, um Razor Pages zu verwenden, wählen Sie ASP.NET Core Web App und klicken Sie auf Weiter.
Erstellen einer neuen .NET Core Web App in Visual Studio
Es erscheint ein neues Fenster, in das Sie den neuen Projektnamen und den Standort eingeben. Klicken Sie dann auf Weiter.
Konfigurieren Sie das neue Projekt
Wählen Sie nun im neuen Fenster Ihr Ziel-Framework aus, aktivieren Sie die Option Für HTTPS konfigurieren und klicken Sie auf Erstellen.
Die IronXL-Bibliothek kann auf verschiedene Weise heruntergeladen und installiert werden.
Diese sind:
Der einfachste Weg, die IronXL-Bibliothek zu installieren, ist die Verwendung des NuGet-Paketmanagers. Öffnen Sie den Manager und suchen Sie auf der Registerkarte "Durchsuchen" nach IronXL. Wählen Sie IronXL aus den Suchergebnissen aus und installieren Sie es.
Der folgende Screenshot zeigt, wie Sie den NuGet Package Manager in Visual Studio öffnen.
Navigieren Sie zu NuGet Package Manager
IronXL in den Suchergebnissen:
Suchen Sie nach IronXL in der NuGet Package Manager UI
Die Verwendung einer Konsole zur Durchführung von Operationen ist für viele eine beliebte Wahl. Wenn Sie IronXL lieber über die Befehlszeile installieren möchten, können Sie die folgenden Schritte ausführen:
Install-Package IronXL.Excel
Jetzt wird das Paket in das aktuelle Projekt heruntergeladen/installiert und ist einsatzbereit.
Installieren Sie IronXL über die Paketmanager-Konsole
Sobald das Projekt erstellt ist, wird eine einfache Schnittstelle der Razor-Anwendung erstellt. Ändern Sie nun die Schnittstelle für den Excel-Export.
Die Weboberfläche des neu erstellten Projekts
Ändern Sie die obige Schnittstelle, indem Sie die Datei index.cshtml
im Verzeichnis Pages
bearbeiten.
@page
@model IndexModel
@{
ViewData ["Title"] = "Home page";
}
<div class="text-center">
<h1 class="display-4">IronXL Generate Excel File</h1>
<p class="m-5">This will be the combination of Razor and IronXL and togather they will Export data to Excel file.</p>
<form method="post" asp-page-handler="Export">
<button class="btn btn-success p-3">Export Excel File!</button>
</form>
</div>
@page
@model IndexModel
@{
ViewData ["Title"] = "Home page";
}
<div class="text-center">
<h1 class="display-4">IronXL Generate Excel File</h1>
<p class="m-5">This will be the combination of Razor and IronXL and togather they will Export data to Excel file.</p>
<form method="post" asp-page-handler="Export">
<button class="btn btn-success p-3">Export Excel File!</button>
</form>
</div>
page model ReadOnly Property () As IndexModel
ViewData ("Title") = "Home page"
End Property
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'<div class="text-center"> <h1 class="display-4"> IronXL Generate Excel File</h1> <p class="m-5"> This will be the combination @of Razor @and IronXL @and togather they will Export data @to Excel file.</p> <form method="post" asp-page-handler="Export"> <button class="btn btn-success p-3"> Export Excel File!</button> </form> </div>
Dieser Code ändert die Oberfläche der Startseite und fügt die Schaltfläche "Exportieren" hinzu.
Die neue Schnittstelle mit einer Export-Schaltfläche
Erstellen Sie nun die Methode "onPostExport" in der Datei "index.cshtml.cs" und schreiben Sie den folgenden Code. Dieser Code erzeugt ein Arbeitsblatt und schreibt die Spaltennamen fett. Die Benutzer können auch die Schriftgröße und sogar die Hintergrundfarbe der Spalten mit Hilfe des Stils festlegen. Es ist dasselbe wie der Export von Daten aus Datenbanktabellen von SQL Server oder einem anderen Datenbankserver nach Excel.
public FileResult OnPostExport()
{
WorkBook workBook = new WorkBook(IronXL.ExcelFileFormat.XLSX);
WorkSheet workSheet = workBook.CreateWorkSheet("data");
//Add data and styles to the new worksheet
workSheet ["A1"].Value = "Name";
workSheet ["B1"].Value = "Email";
workSheet ["C1"].Value = "Marks";
workSheet ["D1"].Value = "Persent Age";
workSheet ["A1:D1"].Style.Font.Bold = true;
workSheet ["A2"].Value = "Nick";
workSheet ["A3"].Value = "Roy";
workSheet ["A4"].Value = "Chris";
workSheet ["B2"].Value = "Nick@gmail.com";
workSheet ["B3"].Value = "Roy123@gmail.com";
workSheet ["B4"].Value = "Chris1999@gmail.com";
workSheet ["C2"].Value = "850";
workSheet ["C3"].Value = "710";
workSheet ["C4"].Value = "990";
workSheet ["D2"].Value = "85%";
workSheet ["D3"].Value = "71%";
workSheet ["D4"].Value = "99%";
return File(workBook.ToStream().ToArray(), "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "Exported.xlsx");
}
public FileResult OnPostExport()
{
WorkBook workBook = new WorkBook(IronXL.ExcelFileFormat.XLSX);
WorkSheet workSheet = workBook.CreateWorkSheet("data");
//Add data and styles to the new worksheet
workSheet ["A1"].Value = "Name";
workSheet ["B1"].Value = "Email";
workSheet ["C1"].Value = "Marks";
workSheet ["D1"].Value = "Persent Age";
workSheet ["A1:D1"].Style.Font.Bold = true;
workSheet ["A2"].Value = "Nick";
workSheet ["A3"].Value = "Roy";
workSheet ["A4"].Value = "Chris";
workSheet ["B2"].Value = "Nick@gmail.com";
workSheet ["B3"].Value = "Roy123@gmail.com";
workSheet ["B4"].Value = "Chris1999@gmail.com";
workSheet ["C2"].Value = "850";
workSheet ["C3"].Value = "710";
workSheet ["C4"].Value = "990";
workSheet ["D2"].Value = "85%";
workSheet ["D3"].Value = "71%";
workSheet ["D4"].Value = "99%";
return File(workBook.ToStream().ToArray(), "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "Exported.xlsx");
}
Public Function OnPostExport() As FileResult
Dim workBook As New WorkBook(IronXL.ExcelFileFormat.XLSX)
Dim workSheet As WorkSheet = workBook.CreateWorkSheet("data")
'Add data and styles to the new worksheet
workSheet ("A1").Value = "Name"
workSheet ("B1").Value = "Email"
workSheet ("C1").Value = "Marks"
workSheet ("D1").Value = "Persent Age"
workSheet ("A1:D1").Style.Font.Bold = True
workSheet ("A2").Value = "Nick"
workSheet ("A3").Value = "Roy"
workSheet ("A4").Value = "Chris"
workSheet ("B2").Value = "Nick@gmail.com"
workSheet ("B3").Value = "Roy123@gmail.com"
workSheet ("B4").Value = "Chris1999@gmail.com"
workSheet ("C2").Value = "850"
workSheet ("C3").Value = "710"
workSheet ("C4").Value = "990"
workSheet ("D2").Value = "85%"
workSheet ("D3").Value = "71%"
workSheet ("D4").Value = "99%"
Return File(workBook.ToStream().ToArray(), "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "Exported.xlsx")
End Function
Mit dem obigen Code wird eine Arbeitsmappe erstellt und die Datei als Excel-Blatt zurückgegeben. Diese Methode wird mit der Schaltfläche verknüpft, und sobald die Schaltfläche angeklickt wird, wird die exportierte XLSX-Datei automatisch erstellt und heruntergeladen.
Exportieren einer XLSX-Datei im Browser
Die Daten in der exportierten XLSX-Datei
Genau wie oben können Sie CSV-Textdateien mit Änderungen in einer einzigen Codezeile in den obigen Codebeispielen leicht exportieren. Ersetzen Sie einfach den Code für die Rückgabedatei im obigen Quellcode durch diesen, und Ihre Razor-Seite wird eine CSV-Datei zurückgeben.
return File(workBook.ToStream().ToArray(), "text/csv", "Student.csv");
return File(workBook.ToStream().ToArray(), "text/csv", "Student.csv");
Return File(workBook.ToStream().ToArray(), "text/csv", "Student.csv")
Exportieren einer CSV-Datei im Browser
Die Daten in der exportierten CSV-Datei
Der Export von Daten in Excel-Tabellen und CSV-Dateien ist eine häufige Aufgabe in der Web-Entwicklung, und Razor und IronXL machen es einfach, dies zu erreichen. Mit IronXL können Entwickler auf einfache Weise Excel-Tabellen erstellen und diese in einer Datei oder einem Stream speichern. Mit Razor können dann dynamische Inhalte erstellt werden, die Links zu den Excel-Dokumenten enthalten, so dass die Benutzer sie direkt von der Webseite herunterladen können. Dies erleichtert die Erstellung von Berichten und anderen datengesteuerten Inhalten, die leicht mit anderen geteilt werden können.
Die Kombination von Razor und IronXL for .NET Core Razor Pages bietet ein leistungsstarkes Toolset für Webentwickler, die dynamische, datengesteuerte Webseiten erstellen möchten. Um Razor und IronXL nutzen zu können, müssen Visual Studio und .NET Core SDK installiert sein. Danach ist es einfach, ein neues Visual Studio-Projekt zu erstellen und die IronXL-Bibliothek zu installieren. Durch die Änderung der Schnittstelle der Homepage und die Schaffung einer "OnPostExport"-Methode können Entwickler Daten in wenigen einfachen Schritten in Excel-Dokumente exportieren.
Wenn Sie mehr über IronXL, Razor und den Export von Daten in Excel- und CSV-Dateien erfahren möchten, besuchen Sie bitte folgende Websiteseite.
IronXL kann für nicht-kommerzielle Entwicklungszwecke kostenlos genutzt werden. Akostenloser Test ist für Tests in der Produktion verfügbar. Sehen Sie sich diepreispläne für weitere Informationen über Preise und Lizenzierung.
Die Nutzer können auch profitieren vonIron Suiteeine Suite von 5 professionellen ASP.NET Core-Bibliotheken, darunterIronXLironPDF, und mehr.
9 .NET API-Produkte für Ihre Bürodokumente