Средно – 5-6 изречения

Този Aspose.Words LINQ Reporting Engine for .NET позволява на разработчиците да създават богати, данни‑ориентирани отчети чрез комбиниране на синтаксис за тагове в чист текст с LINQ заявки. Отчетите могат да се свързват с колекции, бази данни, JSON, XML или персонализирани обекти, като филтриране, групиране и агрегация се извършват директно в шаблона. Резултатът е напълно попълнен отчет в Word формати.

Инсталиране и настройка

  1. Инсталирайте NuGet пакета Aspose.Words.
  2. Прилагайте вашия лиценз ( Лицензиране с измерване ).
  3. Добавете препратка към Aspose.Words и уверете се, че зависимостите са включени.
  4. За пълните стъпки, вижте Ръководство за инсталиране .

Поддържани платформи: Windows, Linux и macOS с .NET Framework, .NET или Mono. IDE‑та: Visual Studio 2017–2026, JetBrains Rider, MonoDevelop.

Поддържани шаблони / изходни формати: DOC, DOCX, RTF, DOT, DOTX, DOTM, DOCM, Word 2003 XML, и Word 2007 XML.

Бърз старт

Създайте отчет от XML:

using Aspose.Words;
using Aspose.Words.Reporting;

var doc = new Document("ReportTemplate.docx");
var dataSource = new XmlDataSource("Data.xml");

var engine = new ReportingEngine();
engine.BuildReport(doc, dataSource, "data");

doc.Save("Report.Output.docx");

Функции и възможности

Синтаксис на шаблона

  • Тагове като <<Name>>, <<foreach:Orders>>, <<if:Condition>> са четими за хора.
  • Поддържа се в параграфи, таблици, заглавия и колонтитули.

LINQ Data Binding

  • Свързване с колекции, DataTables, EF запитвания, JSON, XML или персонализирани обекти.
  • Вграден LINQ: Where, OrderBy, GroupBy, проекции.

Филтриране, групиране и сортиране

  • Условни блокове с <<if:…>> / <<endif>>.
  • Групиране на данни с <<groupby:Property>>.
  • Вградено подреждане с orderby клаузи.

Функции за агрегация

  • Вградени тагове: <<sum:>>, <<avg:>>, <<count>>, <<min:>>, <<max:>>.
  • Автоматични актуализации, когато наборите от данни се променят.

Условна & логика за превключване

  • Използвайте <<switch:Expression>>, <<case:Value>>, <<default>> за множество сценарии.
  • Опростява шаблони с различни оформления.

Вложени & Йерархични данни

  • Навигирайте обектни графи (например,., <<foreach:Order.Items>>).
  • Създавайте вложени таблици/списъци с групиране + условия.

Персонализирани функции & разширяемост

  • Регистрирайте разширителни методи или обработващи функции за персонализирана логика.
  • Извършвайте специализирано форматиране и трансформации.

Наследяване на шаблони

  • Определете базови шаблони и ги използвайте отново в дъщерните шаблони.
  • Поддържайте последователно брандиране и стилове.

Събития & обратни извиквания

  • Прикачете се към ReportBuildStarted, TagProcessed, ReportBuildFinished.
  • Добавете логиране, вмъкнете диаграми/изображения или променяйте изхода динамично.

Локализация & интернационализация

  • Форматирайте дати, числа и валути според културата.
  • Интегрирайте ресурсни файлове за многоезични отчети.

FAQ

  1. Как се различава това от Mail Merge? LINQ Reporting използва текстови тагове и поддържа LINQ изрази, за разлика от традиционните полета за mail merge.
  2. Какви източници на данни се поддържат? XML, JSON, CSV, DataTables, Entity Framework и персонализирани .NET обекти.
  3. Мога ли да вмъквам диаграми и изображения? Да. Шаблоните могат да включват диаграми, баркодове и изображения, попълнени от данни.
  4. Кои формати мога да изведа? DOC, DOCX, RTF, DOT, DOTX, DOTM, DOCM, Word 2003 XML, and Word 2007 XML.
  5. Поддържа ли локализация? Да. Форматиране, съобразено с културата, и интеграция на ресурси се поддържат.
 Български