UTILISATION D'IRONXL

Comment exporter des fichiers CSV et Excel dans Razor ?

Mise à jour février 20, 2024
Partager:

Vous cherchez un moyen d'exporter des données vers un fichier Excel à l'aide de Razor Pages ? Cet article explique comment le faire en utilisant IronXL for .NET.

1. IronXL

IronXL est une bibliothèque .NET utilisée pour travailler avec des fichiers Excel. Il est construit sur OpenXML SDK et fournit une API simple pour lire, écrire et manipuler les feuilles de calcul Excel. IronXL for .NET peut être utilisé dans une grande variété d'applications .NET, y compris les applications Web, les applications de bureau et les applications de console. IronXL offre une série de fonctions permettant de travailler avec des documents Excel, notamment la possibilité delire etécrire des données à des cellules individuelles, de créer des diagrammes et des graphiques, et d'effectuer des opérations d'analyse de donnéescalculs complexes. Il prend également en charge des fonctions Excel avancées telles que les tableaux croisés dynamiques,formatage conditionnelet la validation des données.

L'exportation de données vers des fichiers Excel et CSV est une tâche courante dans le développement web, et Razor et IronXL la rendent facile à réaliser. Avec IronXL, les développeurs peuvent facilement créer des feuilles de calcul Excel et les enregistrer dans un fichier ou un flux. Razor peut alors être utilisé pour générer un contenu dynamique comprenant des liens vers le document Excel, permettant aux utilisateurs de le télécharger directement à partir de la page web. Le format de fichier CSV peut également être généré à l'aide d'IronXL et téléchargé de la même manière à l'aide de Razor. Il est ainsi facile de créer des rapports et d'autres contenus axés sur les données qui peuvent être facilement partagés avec d'autres personnes. Dans l'ensemble, la combinaison de Razor et d'IronXL .NET Core Razor Pages constitue un ensemble d'outils puissants pour les développeurs web qui cherchent à créer des pages web dynamiques et axées sur les données.

2. Conditions préalables

Avant d'utiliser Razor dans Visual Studio, quelques conditions préalables doivent être remplies par les utilisateurs. En voici quelques-unes parmi les plus importantes :

  1. En tant qu'utilisateur d'IronXL, vous devez avoir installé Visual Studio sur votre système informatique. Vous pouvez télécharger gratuitement Visual Studio Community sur le site officiel de Microsoft.

  2. Vous devez également avoir installé le SDK .NET Core sur votre ordinateur. Vous pouvez télécharger la dernière version de .NET Core SDK depuis le site officiel de Microsoft.

  3. Votre environnement de développement Web doit être configuré avant de commencer à travailler avec Razor View.

3. Création d'un nouveau projet Visual Studio

Pour créer un nouveau projet Visual Studio, procédez comme suit :

  1. Ouvrez Visual Studio.

  2. Cliquez sur "Créer un nouveau projet" dans la fenêtre de démarrage, ou cliquez sur "Fichier" > "Nouveau" > "Projet" dans la barre de menu.

    Comment exporter des fichiers CSV et Excel dans Razor, Figure 1 : La fenêtre de démarrage de Visual Studio

    Fenêtre de démarrage de Visual Studio

  3. Sélectionnez le type de projet que vous souhaitez créer, pour utiliser Razor Pages, sélectionnez ASP.NET Core Web App et cliquez sur Suivant.

    Comment exporter des données CSV et Excel dans Razor, Figure 2 : Créer une nouvelle application Web .NET Core dans Visual Studio

    Créer une nouvelle application Web .NET Core dans Visual Studio

  4. Une nouvelle fenêtre apparaît, inscrivez le nom et l'emplacement de votre nouveau projet. Cliquez ensuite sur Suivant.

    Comment exporter des données CSV et Excel dans Razor, Figure 3 : Configurer le nouveau projet

    Configurer le nouveau projet

  5. Dans la nouvelle fenêtre, sélectionnez votre Framework cible, cochez l'option configurer pour HTTPS et cliquez sur créer.

  6. C'est ainsi que votre nouveau projet d'application Web ASP.NET Core de Visual Studio est créé.

4. Installer IronXL

La bibliothèque IronXL peut être téléchargée et installée de différentes manières.

Il s'agit de

  • Utiliser les paquets NuGet de Visual Studio
  • Utilisation de la ligne de commande de Visual Studio.

4.1 Utilisation de Visual Studio

Pour installer la bibliothèque IronXL, l'approche la plus simple consiste à utiliser le gestionnaire de paquets NuGet. Ouvrez le gestionnaire et recherchez IronXL dans l'onglet Parcourir. Choisissez IronXL dans les résultats de la recherche et installez-le.

La capture d'écran ci-dessous montre comment ouvrir le gestionnaire de paquets NuGet dans Visual Studio.

Comment exporter des données CSV et Excel dans Razor, Figure 4 : Naviguer vers le gestionnaire de paquets NuGet

Naviguer vers le gestionnaire de paquets NuGet

IronXL dans les résultats de recherche :

Comment exporter des données CSV et Excel dans Razor, Figure 5 : Recherche d'IronXL dans l'interface utilisateur du gestionnaire de paquets NuGet

Recherche d'IronXL dans l'interface utilisateur du gestionnaire de paquets NuGet

4.2 Utilisation de la ligne de commande de Visual Studio

L'utilisation d'une console pour effectuer des opérations est un choix populaire pour beaucoup. Si vous préférez installer IronXL via la ligne de commande, vous pouvez suivre les étapes suivantes :

  • Dans Visual Studio, allez dans Tools > NuGet Package Manager > Package Manager Console.
  • Saisissez la ligne suivante dans l'onglet Console du gestionnaire de paquets :
Install-Package IronXL.Excel

Le paquet sera alors téléchargé/installé dans le projet en cours et prêt à être utilisé.

Comment exporter des données CSV et Excel dans Razor, Figure 6 : Installer IronXL dans la console du gestionnaire de paquets

Installer IronXL dans la console du gestionnaire de paquets

5. Exporter des données vers un fichier Excel dans Razor NET Core

Une fois le projet créé, une interface simple de l'application Razor est créée. Modifiez maintenant l'interface pour exporter vers Excel.

Comment exporter des données CSV et Excel dans Razor, Figure 7 : L'interface Web du projet nouvellement créé

L'interface Web du projet nouvellement créé

Modifiez l'interface ci-dessus en éditant le fichier index.cshtml dans le répertoire Pages.

@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#

Ce code modifiera l'interface de la page d'accueil et ajoutera le bouton d'exportation.

Comment exporter des fichiers CSV et Excel dans Razor, Figure 8 : La nouvelle interface avec un bouton d'exportation

La nouvelle interface avec un bouton d'exportation

Maintenant, créez la méthode onPostExport dans le fichier index.cshtml.cs et écrivez le code suivant. Ce code génère une feuille de calcul et écrit les noms des colonnes en gras. Les utilisateurs peuvent également définir la taille de la police et même la couleur d'arrière-plan des colonnes à l'aide du style. C'est la même chose que d'exporter des données de tables de bases de données du serveur SQL ou de tout autre serveur de bases de données vers 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#

Le code ci-dessus crée un classeur et renvoie le fichier sous forme de feuille Excel. Cette méthode sera liée au bouton et, une fois le bouton cliqué, elle créera et téléchargera automatiquement le fichier exporté XLSX.

Comment exporter des fichiers CSV et Excel dans Razor, Figure 9 : Exporter un fichier XLSX dans le navigateur

Exporter un fichier XLSX dans le navigateur

Comment exporter des données CSV et Excel dans Razor, Figure 10 : Les données dans le fichier XLSX exporté

Les données du fichier XLSX exporté

6. Exporter les données vers un fichier CSV

Comme ci-dessus, vous pouvez facilement exporter des fichiers texte CSV avec les modifications en une seule ligne de code dans les exemples de code ci-dessus. Remplacez simplement le code du fichier de retour dans le code source ci-dessus par ceci et votre page Razor renverra un fichier CSV.

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#

Comment exporter des fichiers CSV et Excel dans Razor, Figure 11 : Exporter un fichier CSV dans le navigateur

Exporter un fichier CSV dans le navigateur

Comment exporter des fichiers CSV et Excel dans Razor, Figure 12 : Les données dans le fichier CSV exporté

Les données du fichier CSV exporté

7. Conclusion

L'exportation de données vers des feuilles Excel et des fichiers CSV est une tâche courante dans le développement web, et Razor et IronXL la rendent facile à réaliser. Avec IronXL, les développeurs peuvent facilement créer des feuilles de calcul Excel et les enregistrer dans un fichier ou un flux. Razor peut alors être utilisé pour générer un contenu dynamique comprenant des liens vers le document Excel, permettant aux utilisateurs de le télécharger directement à partir de la page web. Il est ainsi facile de créer des rapports et d'autres contenus axés sur les données qui peuvent être facilement partagés avec d'autres personnes.

La combinaison de Razor et d'IronXL .NET Core Razor Pages offre un ensemble d'outils puissants aux développeurs web qui cherchent à créer des pages web dynamiques et axées sur les données. Pour commencer à utiliser Razor et IronXL, il faut que Visual Studio et .NET Core SDK soient installés. Ensuite, la création d'un nouveau projet Visual Studio et l'installation de la bibliothèque IronXL peuvent se faire facilement. Enfin, en modifiant l'interface de la page d'accueil et en créant une méthode "OnPostExport", les développeurs peuvent exporter des données vers des documents Excel en quelques étapes simples.

Pour en savoir plus sur IronXL et Razor et sur la manière d'exporter des données vers des fichiers Excel et CSV, veuillez consulter les sites suivantspage.

L'utilisation d'IronXL est gratuite à des fins de développement non commerciales. Aessai gratuit est disponible pour être testé en production. Regardez leplans tarifaires pour plus de détails sur les prix et les licences.

Les utilisateurs peuvent également bénéficier deIron Suite, une suite de 5 bibliothèques professionnelles ASP.NET Core comprenant IronXLironPDF, et bien d'autres encore.

< PRÉCÉDENT
Comment geler une ligne dans Excel (Guide du débutant)
SUIVANT >
Comment masquer toutes les lignes dans Excel ?