Passer au contenu du pied de page
UTILISATION D'IRONXL

Comment créer des feuilles de calcul Excel en C# .NET Core avec IronXL

Générer des feuilles de calcul Excel de manière programmée dans ASP.NET Core ouvre des possibilités d'automatisation puissantes -- des rapports financiers et suivi d'inventaire à l'exportation de données et tableaux de bord automatisés. Dans le cadre du développement d'applications web, l'intégration de la génération de feuilles de calcul Excel .NET Core améliore l'accessibilité des données et la création de rapports, permettant aux utilisateurs d'interagir avec des ensembles de données complexes et d'en extraire des informations précieuses. Avec IronXL for .NET, les développeurs peuvent créer des fichiers Excel sans installer Microsoft Office ou dépendre de l'Interop Office. Cette bibliothèque multiplateforme fonctionne sur Windows, Linux et macOS, ce qui la rend idéale pour des applications modernes axées sur les données déployées sur Azure ou des conteneurs Docker.

Ce tutoriel explique comment créer des feuilles de calcul Excel .NET Core avec un formatage professionnel, des formules et plusieurs options d'exportation. Que vous construisiez des applications web ASP.NET Core, des applications console ou des services en arrière-plan, ces techniques s'appliquent à toutes les applications .NET 10. À la fin, vous aurez un code fonctionnel pour générer des fichiers Excel prêts pour la production qui s'intègrent avec les projets existants dans Visual Studio ou tout environnement de développement .NET.


Comment installer IronXL dans un projet .NET Core ?

Avant de créer des feuilles de calcul, vous devez ajouter IronXL à votre projet. Ouvrez la console du gestionnaire de packages NuGet dans Visual Studio et exécutez l'une de ces commandes :

Install-Package IronXL
dotnet add package IronXL
Install-Package IronXL
dotnet add package IronXL
SHELL

La première commande fonctionne dans la console du gestionnaire de packages Visual Studio. La seconde fonctionne dans n'importe quel terminal utilisant le CLI .NET. Les deux installent le même package NuGet et ajoutent IronXL à vos références de projet automatiquement.

Une fois l'installation terminée, IronXL est prêt à être utilisé avec une seule directive using. La bibliothèque ne nécessite aucune configuration supplémentaire, dépendance à l'exécution ou installation de Microsoft Office. Elle fonctionne sur toute plateforme où .NET 10 s'exécute -- Windows, Linux, macOS ou tout environnement cloud.

Pour des options d'installation détaillées, incluant le téléchargement manuel de DLL, consultez le guide d'installation d'IronXL. Les développeurs Linux devraient également consulter la documentation de déploiement Linux pour des conseils spécifiques à la plateforme.

Feuilles de calcul Excel .NET Core : Créez des fichiers de feuilles de calcul Excel professionnels en C# en utilisant IronXL for .NET : Image 1 - Installation


Comment créer une feuille de calcul Excel sans dépendances Office ?

L'automatisation traditionnelle de Microsoft Excel nécessite l'installation de MS Office et utilise l'Interop Office, ce qui ne fonctionne pas sur Linux ou dans des environnements conteneurisés. Comme discuté dans la documentation de Microsoft sur l'Interop Office, l'Interop Office introduit une complexité de déploiement et des préoccupations de licence. IronXL for .NET élimine ces limitations en fournissant une solution .NET pure qui traite les fichiers Excel en mode natif avec une prise en charge complète des fonctionnalités des feuilles de calcul modernes.

La bibliothèque prend en charge .NET 8, .NET 9 et .NET 10, ainsi que les versions antérieures de .NET Core. Il gère les formats XLSX, XLS, CSV et d'autres formats de feuilles de calcul sans dépendances externes. Cela la rend particulièrement précieuse pour les applications côté serveur, les microservices, et les scénarios où l'installation de Microsoft Office n'est pas pratique. L'intégration facile via NuGet signifie que vous pouvez commencer à écrire des fichiers Excel en quelques minutes :

using IronXL;

// Create a new workbook in XLSX format
WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
// Add an Excel worksheet with a custom name
WorkSheet sheet = workbook.CreateWorkSheet("SalesReport");
// Set a cell value
sheet["A1"].Value = "Product Sales Summary";
// Save the generated Excel file
workbook.SaveAs("SalesReport.xlsx");
using IronXL;

// Create a new workbook in XLSX format
WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
// Add an Excel worksheet with a custom name
WorkSheet sheet = workbook.CreateWorkSheet("SalesReport");
// Set a cell value
sheet["A1"].Value = "Product Sales Summary";
// Save the generated Excel file
workbook.SaveAs("SalesReport.xlsx");
$vbLabelText   $csharpLabel

La méthode WorkBook.Create() initialise un nouveau classeur Excel, acceptant un paramètre ExcelFileFormat pour spécifier XLSX (format moderne basé sur XML introduit dans Excel 2007) ou XLS (ancien format binaire). Le format XLSX est recommandé dans la plupart des cas en raison de la taille réduite des fichiers et de la meilleure compatibilité avec les outils modernes. La méthode CreateWorkSheet() ajoute des feuilles nommées où vivent les données Excel -- chaque classeur peut contenir plusieurs feuilles individuelles pour organiser des données associées.

Les valeurs des cellules sont définies en utilisant la notation entre crochets qui reflète le système d'adressage d'Excel -- sheet["A1"] cible directement la cellule A1. Cette syntaxe supporte à la fois des cellules spécifiques et des plages, rendant les opérations en masse simples pour tout projet de feuille de calcul.

Sortie

Feuilles de calcul Excel .NET Core : Créez des fichiers de feuilles de calcul Excel professionnels en C# en utilisant IronXL for .NET : Image 2 - Sortie Excel


Comment ajouter des feuilles et peupler des données de manière programmatique ?

Les feuilles de calcul Excel du monde réel contiennent des données structurées réparties sur plusieurs feuilles de calcul. IronXL fournit des méthodes flexibles pour organiser l'information et remplir efficacement les cellules, que l'on travaille avec une saisie manuelle des données ou des pipelines de données automatisés dans des applications axées sur les données.

using IronXL;

WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
WorkSheet sheet = workbook.CreateWorkSheet("MonthlySales");

// Set column names as headers
sheet["A1"].Value = "Month";
sheet["B1"].Value = "Revenue";
sheet["C1"].Value = "Units Sold";

// Populate Excel data using a loop (mock sales data)
string[] months = { "January", "February", "March", "April", "May", "June" };
decimal[] revenue = { 45000.50m, 52000.75m, 48500.25m, 61000.00m, 58750.50m, 67200.25m };
int[] units = { 150, 175, 160, 200, 190, 220 };

for (int i = 0; i < months.Length; i++)
{
    int row = i + 2;
    sheet[$"A{row}"].Value = months[i];
    sheet[$"B{row}"].Value = revenue[i];
    sheet[$"C{row}"].Value = units[i];
}

// Set a range of cells to the same value across columns
sheet["D2:D7"].Value = "Active";
workbook.SaveAs("MonthlySales.xlsx");
using IronXL;

WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
WorkSheet sheet = workbook.CreateWorkSheet("MonthlySales");

// Set column names as headers
sheet["A1"].Value = "Month";
sheet["B1"].Value = "Revenue";
sheet["C1"].Value = "Units Sold";

// Populate Excel data using a loop (mock sales data)
string[] months = { "January", "February", "March", "April", "May", "June" };
decimal[] revenue = { 45000.50m, 52000.75m, 48500.25m, 61000.00m, 58750.50m, 67200.25m };
int[] units = { 150, 175, 160, 200, 190, 220 };

for (int i = 0; i < months.Length; i++)
{
    int row = i + 2;
    sheet[$"A{row}"].Value = months[i];
    sheet[$"B{row}"].Value = revenue[i];
    sheet[$"C{row}"].Value = units[i];
}

// Set a range of cells to the same value across columns
sheet["D2:D7"].Value = "Active";
workbook.SaveAs("MonthlySales.xlsx");
$vbLabelText   $csharpLabel

L'interpolation de chaînes ($"A{row}") permet l'adressage dynamique des cellules au sein de boucles, rendant facile le remplissage de lignes programmé à partir de toute source de données. La syntaxe de plage sheet["D2:D7"] applique des valeurs à plusieurs cellules simultanément -- utile pour les colonnes de statut, les valeurs par défaut, ou l'initialisation de zones de données. IronXL gère automatiquement la conversion des types de données, stockant les décimales comme valeurs numériques et le contenu des chaînes comme texte tout en préservant les types de données Excel appropriés pour le fichier généré.

Travailler avec plusieurs feuilles

La création de plusieurs feuilles de calcul permet d'organiser logiquement les données Excel connexes au sein d'un seul et même classeur :

WorkSheet summarySheet = workbook.CreateWorkSheet("Summary");
WorkSheet detailSheet = workbook.CreateWorkSheet("Details");
WorkSheet archiveSheet = workbook.CreateWorkSheet("Archive");
WorkSheet summarySheet = workbook.CreateWorkSheet("Summary");
WorkSheet detailSheet = workbook.CreateWorkSheet("Details");
WorkSheet archiveSheet = workbook.CreateWorkSheet("Archive");
$vbLabelText   $csharpLabel

Pour les applications nécessitant l'intégration de base de données, IronXL fonctionne avec Entity Framework Core, Dapper ou ADO.NET brut. Les données des objets DataTable peuvent être exportées directement vers des feuilles, simplifiant les flux de travail de rapport et permettant aux utilisateurs de partager des données à travers les systèmes.

Apprenez-en plus sur la gestion des feuilles et l'écriture de fichiers Excel dans la documentation. Pour lire un fichier Excel existant, consultez le tutoriel de chargement de fichier Excel.

Sortie

Feuilles de calcul Excel .NET Core : Créez des fichiers de feuilles de calcul Excel professionnels en C# en utilisant IronXL : Image 3 - Sortie avec plusieurs feuilles


Comment appliquer un formatage et un style professionnels ?

Les données brutes prennent tout leur sens lorsqu'elles sont correctement formatées. IronXL prend en charge les couleurs de fond, les polices, les bordures et les formats de numéros -- des capacités de formatage essentielles qui transforment les feuilles de calcul Excel en rapports soignés adaptés aux présentations exécutives ou aux livrables client.

using IronXL;

WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
WorkSheet sheet = workbook.CreateWorkSheet("FormattedReport");

// Create headers with styling
sheet["A1"].Value = "Category";
sheet["B1"].Value = "Amount";
sheet["C1"].Value = "Date";

// Apply header formatting to the Excel sheet
sheet["A1:C1"].Style.SetBackgroundColor("#2E86AB");
sheet["A1:C1"].Style.Font.Bold = true;
sheet["A1:C1"].Style.Font.SetColor("#FFFFFF");

// Add sample data to specific cells
sheet["A2"].Value = "Software License";
sheet["B2"].Value = 1299.99m;
sheet["C2"].Value = DateTime.Nonw;

// Format currency and date columns
sheet["B2"].FormatString = "$#,##0.00";
sheet["C2"].FormatString = "yyyy-MM-dd";

// Add borders around the data range
var dataRange = sheet["A1:C2"];
dataRange.Style.BottomBorder.SetColor("#000000");
dataRange.Style.BottomBorder.Type = IronXl.Styles.BorderType.Thin;
workbook.SaveAs("FormattedReport.xlsx");
using IronXL;

WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
WorkSheet sheet = workbook.CreateWorkSheet("FormattedReport");

// Create headers with styling
sheet["A1"].Value = "Category";
sheet["B1"].Value = "Amount";
sheet["C1"].Value = "Date";

// Apply header formatting to the Excel sheet
sheet["A1:C1"].Style.SetBackgroundColor("#2E86AB");
sheet["A1:C1"].Style.Font.Bold = true;
sheet["A1:C1"].Style.Font.SetColor("#FFFFFF");

// Add sample data to specific cells
sheet["A2"].Value = "Software License";
sheet["B2"].Value = 1299.99m;
sheet["C2"].Value = DateTime.Nonw;

// Format currency and date columns
sheet["B2"].FormatString = "$#,##0.00";
sheet["C2"].FormatString = "yyyy-MM-dd";

// Add borders around the data range
var dataRange = sheet["A1:C2"];
dataRange.Style.BottomBorder.SetColor("#000000");
dataRange.Style.BottomBorder.Type = IronXl.Styles.BorderType.Thin;
workbook.SaveAs("FormattedReport.xlsx");
$vbLabelText   $csharpLabel

La propriété Style expose des options de formatage correspondant aux capacités de Microsoft Excel. Les couleurs de fond acceptent les codes hexadécimaux (avec ou sans le préfixe #), tandis que FormatString applique des formats de numéros identiques à la syntaxe de formatage personnalisé d'Excel -- les mêmes modèles fonctionnent dans les deux environnements. Le style de bordure prend en charge les types Thin, Medium, Thick, et Double, permettant un contrôle précis des limites de cellules dans votre feuille Excel.

Techniques avancées de formatage

Pour les feuilles de calcul Excel avec de nombreuses données, CreateFreezePane(0, 1) garde les en-têtes visibles pendant le défilement -- une amélioration subtile qui améliore considérablement la convivialité pour les grands ensembles de données. La configuration d'impression via sheet.PrintSetup gère l'orientation, les marges et l'échelle pour la sortie physique.

Explorez d'autres options de style dans le guide de formatage des cellules et le tutoriel de configuration des bordures. Ces outils vous donnent un contrôle complet sur chaque aspect de l'apparence des cellules.


Comment utiliser les formules Excel pour des calculs automatiques ?

Le moteur de calcul d'Excel automatise l'analyse des données, et IronXL offre un support complet pour les formules. Définissez les formules sous forme de chaînes en utilisant la syntaxe standard d'Excel, et IronXL calcule les résultats automatiquement sur demande -- essentiel pour les rapports et l'analyse financière.

using IronXL;

WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
WorkSheet sheet = workbook.CreateWorkSheet("BudgetCalculations");

// Add expense data to the Excel workbook
sheet["A1"].Value = "Expense";
sheet["B1"].Value = "Amount";
sheet["A2"].Value = "Rent";
sheet["B2"].Value = 2500;
sheet["A3"].Value = "Utilities";
sheet["B3"].Value = 350;
sheet["A4"].Value = "Supplies";
sheet["B4"].Value = 875;
sheet["A5"].Value = "Marketing";
sheet["B5"].Value = 1200;

// Add formulas for calculations
sheet["A7"].Value = "Total:";
sheet["B7"].Formula = "=SUM(B2:B5)";
sheet["A8"].Value = "Average:";
sheet["B8"].Formula = "=AVERAGE(B2:B5)";
sheet["A9"].Value = "Maximum:";
sheet["B9"].Formula = "=MAX(B2:B5)";
sheet["A10"].Value = "Count:";
sheet["B10"].Formula = "=COUNT(B2:B5)";

// Calculate all formulas
workbook.EvaluateAll();

// Access calculated values programmatically
decimal total = sheet["B7"].DecimalValue;
Console.WriteLine($"Calculated total: {total}");
workbook.SaveAs("BudgetCalculations.xlsx");
using IronXL;

WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
WorkSheet sheet = workbook.CreateWorkSheet("BudgetCalculations");

// Add expense data to the Excel workbook
sheet["A1"].Value = "Expense";
sheet["B1"].Value = "Amount";
sheet["A2"].Value = "Rent";
sheet["B2"].Value = 2500;
sheet["A3"].Value = "Utilities";
sheet["B3"].Value = 350;
sheet["A4"].Value = "Supplies";
sheet["B4"].Value = 875;
sheet["A5"].Value = "Marketing";
sheet["B5"].Value = 1200;

// Add formulas for calculations
sheet["A7"].Value = "Total:";
sheet["B7"].Formula = "=SUM(B2:B5)";
sheet["A8"].Value = "Average:";
sheet["B8"].Formula = "=AVERAGE(B2:B5)";
sheet["A9"].Value = "Maximum:";
sheet["B9"].Formula = "=MAX(B2:B5)";
sheet["A10"].Value = "Count:";
sheet["B10"].Formula = "=COUNT(B2:B5)";

// Calculate all formulas
workbook.EvaluateAll();

// Access calculated values programmatically
decimal total = sheet["B7"].DecimalValue;
Console.WriteLine($"Calculated total: {total}");
workbook.SaveAs("BudgetCalculations.xlsx");
$vbLabelText   $csharpLabel

La propriété Formula accepte la syntaxe standard des formules Excel -- les mêmes formules qui fonctionnent dans Microsoft Excel fonctionnent ici. Après avoir défini les formules, appelez EvaluateAll() pour calculer les résultats. Cette étape garantit que les valeurs calculées sont immédiatement disponibles via les propriétés typées comme DecimalValue, IntValue, ou StringValue. Sans appeler EvaluateAll(), les formules se sauvegardent toujours correctement et se calculent lors de l'ouverture dans Excel, mais l'accès programmatique aux résultats nécessite d'abord une évaluation.

Sortie

Feuilles de calcul Excel .NET Core : Créez des fichiers de feuilles de calcul Excel professionnels en C# en utilisant IronXL: Image 4 - Sortie de formule Excel

Feuilles de calcul Excel .NET Core : Créez des fichiers de feuilles de calcul Excel professionnels en C# en utilisant IronXL: Image 5 - Sortie de console

IronXL prend en charge plus de 150 fonctions Excel, notamment les opérations mathématiques (SOMME, MOYENNE, ROND), les fonctions statistiques (COMPTE, MAX, MIN, STDEV), la manipulation de texte (CONCATENER, GAUCHE, DROITE) et les opérations logiques (IF, AND, OR). Voir le guide d'édition des formules pour des scénarios avancés, incluant des références de cellules à travers les feuilles.

Méthodes d'agrégation intégrées

Pour des scénarios plus simples où les formules n'ont pas besoin de persister dans le fichier Excel, IronXL fournit des méthodes d'agrégation intégrées :

decimal sum = sheet["B2:B5"].Sum();
decimal avg = sheet["B2:B5"].Avg();
decimal max = sheet["B2:B5"].Max();
decimal sum = sheet["B2:B5"].Sum();
decimal avg = sheet["B2:B5"].Avg();
decimal max = sheet["B2:B5"].Max();
$vbLabelText   $csharpLabel

Ces méthodes offrent une alternative native en C# quand les calculs n'ont pas besoin d'apparaître comme des formules visibles dans la feuille de calcul. L'API orientée objet garde votre code lisible et sécurisé sans nécessiter une syntaxe de formule basée sur des chaînes.


Comment exporter des fichiers Excel et les servir pour téléchargement ?

IronXL prend en charge plusieurs formats d'exportation pour répondre aux différentes exigences d'intégration. Outre les formats Excel standard, les feuilles de calcul peuvent être exportées au format CSV pour l'échange de données, au format JSON pour les applications web ou au format TSV pour la compatibilité avec les systèmes existants. Cette flexibilité permet d'intégrer facilement la génération d'Excel dans n'importe quel flux de travail.

using IronXL;

WorkBook workbook = WorkBook.Load("BudgetCalculations.xlsx");

// Export to different formats
workbook.SaveAs("output.xlsx");      // Modern Excel (Office 2007+)
workbook.SaveAs("output.xls");       // Legacy Excel (97-2003)
workbook.SaveAsCsv("output.csv");    // CSV for data import/export
workbook.SaveAsJson("output.json");  // JSON for web APIs
using IronXL;

WorkBook workbook = WorkBook.Load("BudgetCalculations.xlsx");

// Export to different formats
workbook.SaveAs("output.xlsx");      // Modern Excel (Office 2007+)
workbook.SaveAs("output.xls");       // Legacy Excel (97-2003)
workbook.SaveAsCsv("output.csv");    // CSV for data import/export
workbook.SaveAsJson("output.json");  // JSON for web APIs
$vbLabelText   $csharpLabel

Chaque format répond à des cas d'utilisation spécifiques. XLSX est la meilleure solution pour préserver le formatage et les formules lors du partage avec les utilisateurs d'Excel. Le format CSV offre une compatibilité maximale pour l'importation dans des bases de données, des outils d'analyse ou d'autres tableurs. JSON s'intègre naturellement avec les frontend JavaScript et les APIs REST.

Sortie

Feuilles de calcul Excel .NET Core : Créez des fichiers de feuilles de calcul Excel professionnels en C# en utilisant IronXL: Image 6 - Sortie Excel moderne

Feuilles de calcul Excel .NET Core : Créez des fichiers de feuilles de calcul Excel professionnels en C# en utilisant IronXL: Image 7 - Sortie JSON

Servir des fichiers Excel dans ASP.NET Core

Pour les applications web ASP.NET Core, servir des fichiers Excel sous forme de réponses téléchargeables ne nécessite que quelques lignes de code :

[HttpGet("download-report")]
public IActionResult DownloadReport()
{
    WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
    WorkSheet sheet = workbook.CreateWorkSheet("Report");
    sheet["A1"].Value = "Generated Report";
    sheet["A2"].Value = DateTime.Nonw;

    var stream = workbook.ToStream();
    return File(
        stream,
        "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
        "Report.xlsx"
    );
}
[HttpGet("download-report")]
public IActionResult DownloadReport()
{
    WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
    WorkSheet sheet = workbook.CreateWorkSheet("Report");
    sheet["A1"].Value = "Generated Report";
    sheet["A2"].Value = DateTime.Nonw;

    var stream = workbook.ToStream();
    return File(
        stream,
        "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
        "Report.xlsx"
    );
}
$vbLabelText   $csharpLabel

La méthode ToStream() crée un MemoryStream contenant le fichier Excel complet, que la méthode File() d'ASP.NET Core retourne avec le type MIME approprié. Ce modèle fonctionne de la même manière pour les contrôleurs MVC, les contrôleurs API et les API minimales. Le navigateur déclenche automatiquement un téléchargement de fichier avec le nom de fichier spécifié, ce qui permet aux utilisateurs d'enregistrer localement le fichier Excel généré.

Pour les applications à fort trafic, envisagez de générer des rapports de manière asynchrone et de mettre en cache les résultats lorsque les données sous-jacentes ne changent pas fréquemment -- cette approche améliore significativement la performance. La documentation de conversion de format couvre d'autres scénarios d'exportation, y compris les fichiers protégés par mot de passe.


Comment IronXL se compare-t-il à d'autres bibliothèques Excel .NET ?

Il existe plusieurs bibliothèques pour la manipulation d'Excel en .NET, chacune présentant des atouts différents. Le tableau ci-dessous montre comment elles se comparent selon les critères les plus importants pour les applications de production :

Comparaison des bibliothèques Excel .NET pour le développement .NET Core
Caractéristique IronXL Alternatives Open-Source
Installation de Microsoft Office Requise Non Non
Support Technique Oui (équipe d'ingénierie 24/5) Basé sur la communauté
Multiplateforme (.NET Core) Prise en charge complète Varie selon la bibliothèque
Moteur de calcul de formule 150+ fonctions Limitées ou aucune
Modèle de licence Commercial avec essai gratuit Divers open-source

IronXL excelle dans les scénarios d'entreprise nécessitant un support technique fiable, une documentation et des mises à jour cohérentes. La bibliothèque gère gracieusement les cas particuliers -- fichiers corrompus, formules complexes, et grands ensembles de données -- où les alternatives open-source peuvent avoir des difficultés. Pour les équipes priorisant la vélocité de développement et la fiabilité en production, le soutien commercial d'IronXL offre une tranquillité d'esprit.

Selon les discussions sur Stack Overflow, les développeurs citent fréquemment la simplicité de l'API et la qualité de la documentation comme facteurs décisifs lorsqu'ils choisissent des bibliothèques Excel pour leurs projets .NET Core. La .NET Foundation souligne également le déploiement multiplateforme comme une priorité pour le développement .NET moderne, rendant les bibliothèques indépendantes d'Office essentielles pour des solutions maintenables.

Pour les équipes soucieuses de la sécurité : IronXL fonctionne indépendamment de Microsoft Office et évite l'Interop Office, ce qui minimise le risque de vulnérabilités externes. Le support intégré pour le chiffrement et la protection par mot de passe vous permet de protéger les fichiers Excel générés, garantissant que seuls les utilisateurs autorisés peuvent accéder ou modifier des feuilles de calcul et données critiques. Consultez les options de licence IronXL pour trouver le plan qui convient à votre équipe.


Comment gérer la performance à grande échelle ?

Lorsque votre application génère des fichiers Excel pour de nombreux utilisateurs simultanés ou traite de grands ensembles de données, la planification des performances devient critique. IronXL gère efficacement les grands classeurs car il fonctionne entièrement en mémoire sans engendrer de processus Office ou d'objets COM. Cette architecture maintient une surcharge prévisible de CPU et de mémoire.

Stratégies clés de performance

Pour les rapports riches en données, remplissez les cellules en masse plutôt qu'une à la fois. Écrire dans une plage en utilisant la notation entre crochets sheet["A1:Z1000"] peut être significativement plus rapide que d'itérer à travers les cellules individuelles lors de la définition de valeurs uniformes. Pour les données hétérogènes, utilisez des boucles avec l'interpolation de chaînes pour l'adressage dynamique des cellules.

Pour les points d'extrémité ASP.NET Core qui génèrent des rapports à la demande, envisagez de mettre en cache les tableaux d'octets résultants ou la sortie MemoryStream en utilisant IMemoryCache ou un cache distribué comme Redis. Lorsque les données sous-jacentes ne changent pas entre les requêtes, les fichiers Excel mis en cache peuvent être retournés immédiatement sans régénération. Cette stratégie est particulièrement efficace pour les exportations de tableaux de bord et les rapports programmés.

La génération multi-thread est sûre avec IronXL lorsque chaque thread fonctionne sur sa propre instance WorkBook. Évitez de partager des instances de classeur ou de feuille de calcul à travers les threads sans synchronisation. Pour le traitement des travaux en arrière-plan, les bibliothèques comme Hangfire ou Quartz.NET fonctionnent avec IronXL pour la génération de rapports programmés, vous permettant de pré-générer des fichiers pendant les heures creuses.

Pour les plus grands ensembles de données, envisagez de répartir les données sur plusieurs feuilles plutôt que de créer des feuilles uniques avec des dizaines de milliers de lignes. La documentation d'exportation de DataTable montre des modèles efficaces pour le transfert de données en masse à partir de sources ADO.NET. Des exemples de code supplémentaires couvrant des scénarios avancés comme la lecture de fichiers Excel existants ou le travail avec des classeurs protégés par mot de passe sont disponibles dans la référence API complète.


Quels sont vos prochains pas ?

Créer des feuilles de calcul Excel .NET Core avec IronXL transforme ce qui était autrefois une tâche dépendante en une opération .NET simple. De la manipulation de cellules de base aux calculs de formules et au formatage professionnel, la bibliothèque offre une boîte à outils complète pour l'automatisation des feuilles de calcul qui fonctionne partout où .NET 10 fonctionne -- serveurs Windows, conteneurs Linux ou plateformes cloud.

L'architecture multiplateforme garantit un comportement identique sur les machines de développement et les environnements de production, éliminant ainsi les problèmes de "fonctionne sur ma machine", fréquents avec les solutions Office Interop. Commencez par la commande d'installation NuGet, créez votre premier classeur et développez à partir de là en utilisant les modèles montrés tout au long de ce guide.

Téléchargez une version d'essai gratuite de 30 jours pour explorer toutes les fonctionnalités sans limitations, ou consultez les options de licence pour le déploiement en production. Parcourez les exemples de code IronXL pour voir des scénarios supplémentaires en action et consultez le hub de documentation IronXL pour la référence complète de l'API et les guides de configuration avancés.

Questions Fréquemment Posées

Quels sont les avantages de l'utilisation d'IronXL pour la génération de feuilles de calcul Excel dans .NET Core ?

IronXL permet aux développeurs de créer des fichiers Excel de manière programmatique sans avoir besoin de Microsoft Office ou d'Office Interop, offrant une compatibilité multiplateforme sur Windows, Linux et macOS. Il s'agit donc d'un outil idéal pour les applications modernes axées sur les données.

IronXL peut-il être utilisé dans les applications ASP.NET Core ?

Oui, IronXL for .NET peut être intégré dans des applications ASP.NET Core, offrant ainsi de puissantes possibilités d'automatisation telles que la création de rapports financiers, le suivi des stocks et l'exportation de données.

Est-il possible de générer des feuilles de calcul Excel dans des applications web à l'aide d'IronXl.Excel ?

Oui. IronXL prend en charge la génération et le téléchargement de feuilles Excel dans les applications web, améliorant ainsi l'expérience utilisateur en permettant l'exportation et l'interaction avec des tableaux de données complexes.

IronXL nécessite-t-il l'installation de Microsoft Office ?

Non, IronXL ne nécessite pas l'installation de Microsoft Office. Il fonctionne indépendamment d'Office Interop, ce qui simplifie le déploiement et l'intégration.

Comment IronXL améliore-t-il l'accessibilité des données dans les applications .NET Core ?

IronXL améliore l'accessibilité des données en permettant aux développeurs de générer par programme des feuilles de calcul Excel, ce qui facilite l'interaction avec les utilisateurs et l'extraction d'informations à partir d'ensembles de données complexes.

IronXL peut-il être déployé dans des environnements en nuage comme Azure ?

Oui, IronXL peut être déployé dans des environnements cloud tels qu'Azure et les conteneurs Docker, ce qui le rend adapté aux applications évolutives basées sur le cloud.

IronXL est-il compatible avec macOS et Linux ?

IronXL est entièrement compatible avec macOS et Linux, fournissant une solution multiplateforme pour la génération de feuilles de calcul Excel dans les applications .NET.

Quels types d'applications bénéficient de l'utilisation d'IronXL ?

Les applications qui nécessitent des solutions axées sur les données, telles que les rapports financiers, la gestion des stocks et les tableaux de bord automatisés, bénéficient grandement de l'utilisation d'IronXL pour la génération de feuilles de calcul Excel.

Comment IronXL améliore-t-il l'expérience utilisateur dans les applications web ?

IronXL améliore l'expérience utilisateur en permettant l'exportation de tableaux de données complexes dans des feuilles de calcul Excel, ce qui rend les données plus accessibles et portables pour les utilisateurs finaux.

Jordi Bardia
Ingénieur logiciel
Jordi est le plus compétent en Python, C# et C++, et lorsqu'il ne met pas à profit ses compétences chez Iron Software, il programme des jeux. Partageant les responsabilités des tests de produit, du développement de produit et de la recherche, Jordi apporte une immense valeur à l'amé...
Lire la suite

Iron Support Team

We're online 24 hours, 5 days a week.
Chat
Email
Call Me