Wordize for .NET هو حل احترافي لأتمتة التقارير والتوليد البرمجي لمستندات Word. تتيح فئة ReportBuilder لمطوري C# إمكانية إنشاء تقارير Word باستخدام القوالب وصيغة LINQ، مما يساعد في تسريع عمليات ذكاء الأعمال وتنفيذ المحتوى الديناميكي في سير العمل المؤتمت للمستندات.
الإمكانيات الوظيفية:يضمن LINQ Reporting إنشاء مستندات Word احترافية مع دعم التنسيق المعقد والجداول والمخططات. تحتفظ ملفات Word بإمكانية التعديل اللاحق، مما يجعلها مثالية للوثائق المؤسسية والعقود والمواصفات التقنية.
اختبر قدرات التوليد البرمجي لتقارير Word في العرض التوضيحي التفاعلي المعروض على هذه الصفحة. لهذا الغرض، قم بتحميل قالب المستند وملف البيانات (JSON أو XML أو CSV)، وشغل العملية وحمل مستند Word المولد للتحقق. مقطع كود C# المقدم جاهز تماماً للاستخدام في مشروع .NET الخاص بك.
using Wordize.Reporting;
var dataSource = new JsonDataSource("data.json");
ReportBuilder.BuildReport("Input.docx", "Output.docx", dataSource, "");
using Wordize.Reporting;
var dataSource = new JsonDataSource("data.json");
ReportBuilder.BuildReport("Input.docx", "Output.docx", dataSource, "");
using Wordize.Reporting;
using Wordize.Saving;
var dataSource = new JsonDataSource("data.json");
var imageStreams = ReportBuilder.BuildReportToImages("Input.docx",
new ImageSaveOptions(SaveFormat.Docx), 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}.docx");
stream.CopyTo(file);
}
using Wordize.Reporting;
var dataSource = new XmlDataSource("data.xml");
ReportBuilder.BuildReport("Input.docx", "Output.docx", dataSource, "");
using Wordize.Reporting;
var dataSource = new XmlDataSource("data.xml");
ReportBuilder.BuildReport("Input.docx", "Output.docx", dataSource, "");
using Wordize.Reporting;
using Wordize.Saving;
var dataSource = new XmlDataSource("data.xml");
var imageStreams = ReportBuilder.BuildReportToImages("Input.docx",
new ImageSaveOptions(SaveFormat.Docx), 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}.docx");
stream.CopyTo(file);
}
using Wordize.Reporting;
var dataSource = new CsvDataSource("data.csv", new CsvDataLoadOptions() { HasHeaders = true });
ReportBuilder.BuildReport("Input.docx", "Output.docx", dataSource, "");
using Wordize.Reporting;
var dataSource = new CsvDataSource("data.csv", new CsvDataLoadOptions() { HasHeaders = true });
ReportBuilder.BuildReport("Input.docx", "Output.docx", 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.Docx), 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}.docx");
stream.CopyTo(file);
}