Deutsch Indonesia Tiếng Việt فارسی English Italiano Türkçe ไทย Español Polski Русский 日本語 Français Português العربية

Génération de documents à partir de modèles en C#

Wordize for .NET est une solution professionnelle pour l'automatisation des rapports et la génération programmatique de documents. La classe ReportBuilder fournit aux développeurs C# la capacité de créer des rapports en utilisant des modèles et la syntaxe LINQ, ce qui aide à accélérer les processus d'intelligence d'affaires, implémenter du contenu dynamique dans les flux de travail documentaires automatisés.

Fonctionnalités:
  • Génération programmatique de rapports - la classe ReportBuilder fournit la méthode BuildReport() pour créer des documents basés sur des modèles
  • Intégration flexible avec les sources de données - support pour JSON, XML, CSV et objets programmatiques (classes personnalisées, collections d'objets)
  • Application d'expressions LINQ pour le filtrage, le tri et le regroupement de données lors de la génération de documents
  • Configuration des paramètres de génération - la classe ReportBuilderOptions gère les types de données disponibles, la gestion des champs manquants, la suppression des paragraphes vides et autres paramètres de création de rapports
  • Exportation vers format graphique - la méthode BuildReportToImages() retourne les pages de rapport sous forme de tableau d'images
  • Support de l'API Fluent pour lancer les opérations de création de rapports via ReportBuilderContext et le chaînage de méthodes, ajoutant de la clarté au code C#

Testez les capacités de génération programmatique de rapports dans la démonstration interactive en ligne présentée sur cette page. Pour cela, téléchargez un modèle de document, un fichier de données (JSON, XML ou CSV), lancez l'opération et téléchargez le document généré pour vérification. Le fragment de code C# fourni est entièrement prêt à l'utilisation dans votre projet .NET.

C#
Exécuter le code
Téléchargez le modèle de document
Téléchargez le fichier de données
Sélectionnez le format de sortie dans la liste
using Wordize.Reporting;

var dataSource = new JsonDataSource("data.json");
ReportBuilder.BuildReport("Input.docx", "Output.pdf", dataSource, "");
using Wordize.Reporting; var dataSource = new JsonDataSource("data.json"); ReportBuilder.BuildReport("Input.docx", "Output.pdf", dataSource, ""); using Wordize.Reporting; using Wordize.Saving; var dataSource = new JsonDataSource("data.json"); var imageStreams = ReportBuilder.BuildReportToImages("Input.docx", new ImageSaveOptions(SaveFormat.Pdf), new[] { dataSource }, new[] { "" }); foreach (var (stream, page) in imageStreams.Select((s, i) => (s, i))) { using var _ = stream; stream.Position = 0; using var file = File.Create($"Output_{page + 1}.pdf"); stream.CopyTo(file); }
using Wordize.Reporting;

var dataSource = new XmlDataSource("data.xml");
ReportBuilder.BuildReport("Input.docx", "Output.pdf", dataSource, "");
using Wordize.Reporting; var dataSource = new XmlDataSource("data.xml"); ReportBuilder.BuildReport("Input.docx", "Output.pdf", dataSource, ""); using Wordize.Reporting; using Wordize.Saving; var dataSource = new XmlDataSource("data.xml"); var imageStreams = ReportBuilder.BuildReportToImages("Input.docx", new ImageSaveOptions(SaveFormat.Pdf), new[] { dataSource }, new[] { "" }); foreach (var (stream, page) in imageStreams.Select((s, i) => (s, i))) { using var _ = stream; stream.Position = 0; using var file = File.Create($"Output_{page + 1}.pdf"); stream.CopyTo(file); }
using Wordize.Reporting;

var dataSource = new CsvDataSource("data.csv", new CsvDataLoadOptions() { HasHeaders = true });
ReportBuilder.BuildReport("Input.docx", "Output.pdf", dataSource, "");
using Wordize.Reporting; var dataSource = new CsvDataSource("data.csv", new CsvDataLoadOptions() { HasHeaders = true }); ReportBuilder.BuildReport("Input.docx", "Output.pdf", dataSource, ""); using Wordize.Reporting; using Wordize.Saving; var dataSource = new CsvDataSource("data.csv", new CsvDataLoadOptions() { HasHeaders = true }); var imageStreams = ReportBuilder.BuildReportToImages("Input.docx", new ImageSaveOptions(SaveFormat.Pdf), new[] { dataSource }, new[] { "" }); foreach (var (stream, page) in imageStreams.Select((s, i) => (s, i))) { using var _ = stream; stream.Position = 0; using var file = File.Create($"Output_{page + 1}.pdf"); stream.CopyTo(file); }
Exécuter le code

Comment créer un rapport en C#

  1. Connectez le SDK Wordize à votre projet .NET
  2. Créez une source de données et appelez la méthode ReportBuilder.BuildReport(), en spécifiant dans les paramètres le modèle de document, le fichier résultant et la source de données
  3. Obtenez le document généré
5%