Generate Word from template in C#

Tự động tạo tài liệu là rất quan trọng cho các doanh nghiệp tìm kiếm để tạo ra báo cáo năng động, hóa đơn, và thư. Với Aspose.Words Mail Merge cho .NET, bạn có thể tích lũy hiệu quả các mẫu Word với dữ liệu từ các nguồn khác nhau, bao gồm các đối tượng, CSV, JSON, và XML. Hướng dẫn này sẽ hướng dẫn bạn thông qua việc sử dụng Mail Merge trong C# cho dòng công việc tài liệu nhanh chóng và tự động, tập trung vào Dynamic Word Document Creation với C# .NET.

Bảng nội dung

Tổng quan về Mail Merge cho .NET

Plugin Aspose.Words Mail Merge cho .NET cho phép các nhà phát triển tạo tài liệu cá nhân từ các mẫu được xác định sẵn có chứa các lĩnh vực kết hợp:

  • Động lực dân số các mẫu với dữ liệu, hỗ trợ .NET framework Word tài liệu tạo.
  • Thực hiện hiệu quả sản xuất tài liệu khối, sử dụng giải pháp kết hợp thư .NET cho các tài liệu Word.
  • Đảm bảo định dạng liên tục trên tất cả các kết quả, cải thiện C# Word tài liệu mẫu thực hành tốt nhất.

Các tính năng chính:

  • Hỗ trợ nhiều nguồn: Sử dụng dữ liệu từ các đối tượng, cơ sở dữ liệu, XML, JSON và CSV để tạo tài liệu Word tùy chỉnh với C#.
  • Hoạt động cao: Quản lý hiệu quả các tập dữ liệu lớn và các hoạt động khối cho Dynamic Word Document Generation với .NET Core.
  • Customable Templates: Tạo các mẫu với các vị trí để nhập dữ liệu, sử dụng các khả năng .NET Word Mail Fusion Automation.

thiết lập

Để bắt đầu, hãy cài đặt Aspose.Words bằng NuGet:

PM> Install-Package Aspose.Words

Tạo tài liệu từ mẫu bằng cách sử dụng C# Objects

Chúng ta sẽ tạo một tài liệu Word (DOC/DOCX) với các vị trí sau:

<<[sender.Name]>> says: "<<[sender.Message]>>."

Trong ví dụ này, sender là một ví dụ về một lớp mà chúng tôi sẽ sử dụng để thu thập mẫu bằng cách sử dụng C# tạo tài liệu Word từ phương pháp cơ sở dữ liệu.

Tiếp theo, chúng tôi sẽ sử dụng động cơ báo cáo của Aspose.Words để tạo tài liệu Word từ mẫu và ví dụ của lớp Sender bằng cách làm theo các bước sau:

  • tạo ra một ví dụ về Tài liệu lớp và bắt đầu nó với con đường của mẫu Word.
  • Tạo và khởi động một đối tượng của lớp Sender.
  • Tạo ngay lập tức ReportingEngine lớp.
  • Cách sử dụng template Thông tin kỹ thuật.BuildReport(), lấy ví dụ của Tài liệu, nguồn dữ liệu, và tên của nguồn dữ liệu như các thông số.
  • Lưu tài liệu Word được tạo bằng cách sử dụng Tài liệu.Save().

Dưới đây là mẫu mã cho thấy cách tạo một tài liệu Word từ một mẫu trong C#.

Xuất

Tạo tài liệu Word từ một nguồn dữ liệu XML trong C#

Để tạo tài liệu Word từ nguồn dữ liệu XML, chúng tôi sẽ sử dụng một mẫu Word phức tạp hơn với các vị trí sau:

<<foreach [in persons]>>Name: <<[Name]>>, Age: <<[Age]>>, Date of Birth: <<[Birth]:"dd.MM.yyyy">>
<</foreach>>
Average age: <<[persons.Average(p => p.Age)]>>

Nguồn dữ liệu XML được sử dụng trong ví dụ này được hiển thị dưới đây.

Để tạo tài liệu Word từ nguồn dữ liệu XML, hãy làm theo các bước sau:

  • Tạo một ví dụ của lớp Document và bắt đầu nó với con đường trong mẫu Word.
  • tạo ra một ví dụ về XmlDataSource lớp và bắt đầu nó với con đường của tệp XML.
  • Bắt đầu lớp ReportingEngine.
  • Sử dụng phương pháp ReportingEngine.BuildReport() để thu thập mẫu Word.
  • Lưu tài liệu Word được tạo bằng cách sử dụng phương pháp Document.Save.

Dưới đây là mẫu mã cho thấy cách tạo một tài liệu Word từ một nguồn dữ liệu XML trong C#.

Xuất

Tạo tài liệu từ một nguồn dữ liệu JSON trong C#

Tiếp theo, chúng ta hãy khám phá cách tạo tài liệu Word bằng cách sử dụng nguồn dữ liệu JSON. Trong ví dụ này, chúng ta sẽ tạo ra một danh sách các khách hàng được phân khúc bởi các nhà quản lý của họ:

<<foreach [in managers]>>Manager: <<[Name]>>
Contracts:
<<foreach [in Contract]>>- <<[Client.Name]>> ($<<[Price]>>)
<</foreach>>
<</foreach>>

Nguồn dữ liệu JSON tương ứng mà chúng tôi sẽ sử dụng để định cư mẫu là dưới đây:

Để tạo tài liệu Word từ JSON, chúng tôi sẽ sử dụng JsonDataSource lớp để tải nguồn dữ liệu, và các bước còn lại sẽ theo cấu trúc trước đây. đây là mẫu mã cho thấy làm thế nào để tạo một tài liệu Word từ mẫu JSON trong C#.

Xuất

Tạo tài liệu Word từ nguồn dữ liệu CSV trong C#

Để tạo tài liệu Word từ một nguồn CSV, chúng tôi sẽ sử dụng mẫu Word sau:

<<foreach [in persons]>>Name: <<[Column1]>>, Age: <<[Column2]>>, Date of Birth: <<[Column3]:"dd.MM.yyyy">>
<</foreach>>
Average age: <<[persons.Average(p => p.Column2)]>>

Các mẫu sẽ được lưu trữ bằng cách sử dụng dữ liệu CSV sau:

Bây giờ, chúng ta hãy xem xét mã C#. Các bước vẫn giống nhau ngoại trừ một sự khác biệt chính: chúng tôi sẽ sử dụng CsvDataSource lớp để tải dữ liệu CSV. mẫu mã sau đây mô tả làm thế nào để tạo tài liệu Word từ một nguồn data CSV.

Xuất

Cố gắng Aspose.Words cho .NET miễn phí

Bạn có thể thử Aspose.Words cho .NET Sử dụng một miễn phí Giấy phép tạm thời.

Kết luận

Trong bài viết này, bạn đã tìm hiểu làm thế nào để tạo tài liệu Word từ các mẫu bằng cách sử dụng C#. Bạn đã khám phá cách khai thác các nguồn dữ liệu khác nhau như đối tượng, XML, JSON, và CSV cho sự phát triển văn bản năng động trong .NET Tài liệu, Và cảm thấy tự do để đạt được thông qua chúng ta Diễn đàn.

More in this category