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

Tạo tài liệu Word từ mẫu trong C#

Wordize for .NET là giải pháp chuyên nghiệp để tự động hóa báo cáo và tạo tài liệu Word theo chương trình. Lớp ReportBuilder cung cấp cho các nhà phát triển C# khả năng tạo báo cáo Word sử dụng mẫu và cú pháp LINQ, giúp tăng tốc các quy trình phân tích doanh nghiệp, triển khai nội dung động trong quy trình tài liệu tự động.

Tính năng chức năng:
  • Tạo báo cáo Word theo chương trình - lớp ReportBuilder cung cấp phương thức BuildReport() để tạo tài liệu Word dựa trên mẫu
  • Tích hợp linh hoạt với nguồn dữ liệu - hỗ trợ JSON, XML, CSV và đối tượng lập trình (lớp tùy chỉnh, bộ sưu tập đối tượng)
  • Áp dụng biểu thức LINQ để lọc, sắp xếp và nhóm dữ liệu khi tạo tài liệu Word
  • Cấu hình tham số tạo - lớp ReportBuilderOptions quản lý các kiểu dữ liệu có sẵn, xử lý trường bị thiếu, xóa đoạn trống và các tham số khác để tạo báo cáo định dạng Word
  • Xuất sang định dạng đồ họa - phương thức BuildReportToImages() trả về các trang báo cáo Word dưới dạng mảng hình ảnh
  • Hỗ trợ Fluent API để chạy các thao tác tạo báo cáo thông qua ReportBuilderContext và chuỗi phương thức, tăng tính rõ ràng cho mã C#

LINQ Reporting đảm bảo tạo tài liệu Word chuyên nghiệp với hỗ trợ định dạng phức tạp, bảng và biểu đồ. Các tệp Word giữ khả năng chỉnh sửa sau này, làm cho chúng lý tưởng cho tài liệu doanh nghiệp, hợp đồng và thông số kỹ thuật.

Kiểm tra khả năng tạo báo cáo Word theo chương trình trong demo trực tuyến tương tác được trình bày trên trang này. Để làm điều này, hãy tải lên mẫu tài liệu, tệp dữ liệu (JSON, XML hoặc CSV), chạy thao tác và tải xuống tài liệu Word được tạo để xác minh. Đoạn mã C# được cung cấp đã sẵn sàng để sử dụng trong dự án .NET của bạn.

C#
Chạy mã
Tải lên mẫu tài liệu
Tải lên tệp dữ liệu
Chọn định dạng đầu ra từ danh sách
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); }
Chạy mã

Cách tạo báo cáo Word trong C#

  1. Kết nối Wordize SDK với dự án .NET của bạn
  2. Tạo nguồn dữ liệu và gọi phương thức ReportBuilder.BuildReport(), chỉ định trong tham số mẫu Word, tệp kết quả và nguồn dữ liệu
  3. Nhận tài liệu Word được tạo
5%