IRONXL VERWENDEN

Wie man CSV und Excel in Razor exportiert

Aktualisiert 20. Februar 2024
Teilen Sie:

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.

1. IronXL

IronXL 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.

2. Voraussetzungen

Bevor Sie Razor in Visual Studio verwenden, sollten Sie einige Voraussetzungen erfüllen. Hier sind einige der wichtigsten davon:

  1. 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.

  2. 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.

  3. Ihre Web-Entwicklungsumgebung muss eingerichtet sein, bevor Sie mit Razor View arbeiten können.

3. Erstellen eines neuen Visual Studio-Projekts

Um ein neues Visual Studio-Projekt zu erstellen, gehen Sie folgendermaßen vor:

  1. Öffnen Sie Visual Studio.

  2. Klicken Sie im Startfenster auf "Neues Projekt erstellen", oder klicken Sie in der Menüleiste auf "Datei" > "Neu" > "Projekt".

    Wie man CSV und Excel in Razor exportiert, Abbildung 1: Startfenster von Visual Studio

    Startfenster von Visual Studio

  3. 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.

    Wie man CSV und Excel in Razor exportiert, Abbildung 2: Erstellen einer neuen .NET Core Web App in Visual Studio

    Erstellen einer neuen .NET Core Web App in Visual Studio

  4. Es erscheint ein neues Fenster, in das Sie den neuen Projektnamen und den Standort eingeben. Klicken Sie dann auf Weiter.

    Wie man CSV und Excel in Razor exportiert, Abbildung 3: Konfigurieren Sie das neue Projekt

    Konfigurieren Sie das neue Projekt

  5. Wählen Sie nun im neuen Fenster Ihr Ziel-Framework aus, aktivieren Sie die Option Für HTTPS konfigurieren und klicken Sie auf Erstellen.

  6. Auf diese Weise wird Ihr neues Visual Studio ASP.NET Core Web App-Projekt erstellt.

4. IronXL installieren

Die IronXL-Bibliothek kann auf verschiedene Weise heruntergeladen und installiert werden.

Diese sind:

  • Verwendung von Visual Studio NuGet-Paketen
  • Verwendung der Visual Studio-Befehlszeile.

4.1 Visual Studio verwenden

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.

Wie man CSV und Excel in Razor exportiert, Abbildung 4: Navigieren Sie zum NuGet Package Manager

Navigieren Sie zu NuGet Package Manager

IronXL in den Suchergebnissen:

Wie man CSV und Excel in Razor exportiert, Abbildung 5: Suche nach IronXL in der NuGet Package Manager UI

Suchen Sie nach IronXL in der NuGet Package Manager UI

4.2 Verwendung der Visual Studio-Befehlszeile

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:

  • Gehen Sie in Visual Studio zu Tools > NuGet Package Manager > Package Manager Console.
  • Geben Sie auf der Registerkarte Paketmanager-Konsole die folgende Zeile ein:
Install-Package IronXL.Excel

Jetzt wird das Paket in das aktuelle Projekt heruntergeladen/installiert und ist einsatzbereit.

CSV- und Excel-Export in Razor, Abbildung 6: Installation von IronXL in der Paketmanager-Konsole

Installieren Sie IronXL über die Paketmanager-Konsole

5. Daten in eine Excel-Datei exportieren in Razor Net Core

Sobald das Projekt erstellt ist, wird eine einfache Schnittstelle der Razor-Anwendung erstellt. Ändern Sie nun die Schnittstelle für den Excel-Export.

CSV- und Excel-Export in Razor, Abbildung 7: Die Weboberfläche des neu erstellten Projekts

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>
VB   C#

Dieser Code ändert die Oberfläche der Startseite und fügt die Schaltfläche "Exportieren" hinzu.

Wie man CSV und Excel in Razor exportiert, Abbildung 8: Die neue Schnittstelle mit einer Export-Schaltfläche

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
VB   C#

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.

Wie man CSV und Excel in Razor exportiert, Abbildung 9: Exportieren einer XLSX-Datei im Browser

Exportieren einer XLSX-Datei im Browser

Wie man CSV und Excel in Razor exportiert, Abbildung 10: Die Daten in der exportierten XLSX-Datei

Die Daten in der exportierten XLSX-Datei

6. Daten in CSV-Datei exportieren

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")
VB   C#

CSV- und Excel-Export in Razor, Abbildung 11: Exportieren einer CSV-Datei im Browser

Exportieren einer CSV-Datei im Browser

Wie exportiere ich CSV und Excel in Razor, Abbildung 12: Die Daten in der exportierten CSV-Datei

Die Daten in der exportierten CSV-Datei

7. Schlussfolgerung

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.

< PREVIOUS
Einfrieren einer Zeile in Excel (Anleitung für Anfänger)
NÄCHSTES >
Alle Zeilen in Excel einblenden

Sind Sie bereit, loszulegen? Version: 2024.12 gerade veröffentlicht

Gratis NuGet-Download Downloads insgesamt: 1,132,445 Lizenzen anzeigen >