การทำให้การสร้างเอกสารอัตโนมัติเป็นสิ่งสำคัญสำหรับธุรกิจในการสร้างรายงานแบบไดนามิก, ใบแจ้งหนี้, และจดหมาย ด้วย Aspose.Words Mail Merge for .NET คุณสามารถกรอกข้อมูลในแม่แบบ Word ได้อย่างมีประสิทธิภาพด้วยข้อมูลจากแหล่งต่างๆ รวมถึงวัตถุ, CSV, JSON, และ XML คู่มือนี้จะแสดงวิธีการใช้ Mail Merge ใน C# สำหรับการทำงานอัตโนมัติและการไหลเวียนของเอกสารที่ราบรื่น โดยมุ่งเน้นที่ การสร้างเอกสาร Word แบบไดนามิกจาก C# .NET.
หัวข้อที่ครอบคลุม:
- ภาพรวมของ Mail Merge สำหรับ .NET
- สร้างเอกสารจากแหล่งข้อมูลต่างๆ
- แนวทางปฏิบัติที่ดีที่สุดสำหรับ Mail Merge
- คำถามที่พบบ่อย
ภาพรวมของ Mail Merge สำหรับ .NET
Aspose.Words Mail Merge for .NET ช่วยให้ผู้พัฒนาสามารถสร้างเอกสารส่วนบุคคลจากแม่แบบที่กำหนดล่วงหน้าซึ่งมีฟิลด์การรวมข้อมูลปลั๊กอินนี้ออกแบบมาเพื่อการรวมเข้าที่ราบรื่นในสภาพแวดล้อม .NET โดยมีความสามารถในการ:
- กรอกแม่แบบด้วยข้อมูลแบบไดนามิก สนับสนุนการสร้างเอกสาร Word ของ .NET framework.
- ดำเนินการสร้างเอกสารแบบกลุ่มอย่างมีประสิทธิภาพ โดยใช้ โซลูชัน mail merge ของ .NET สำหรับชุดข้อมูลขนาดใหญ่.
- รักษารูปแบบให้สอดคล้องกันในผลลัพธ์ ช่วยปรับปรุง แนวทางปฏิบัติที่ดีที่สุดสำหรับแม่แบบเอกสาร Word ใน C#.
คุณสมบัติหลัก:
- การสนับสนุนหลายแหล่งข้อมูล: ใช้ข้อมูลจากวัตถุ, ฐานข้อมูล, XML, JSON, และ CSV เพื่อสร้างเอกสาร Word ที่กำหนดเองด้วย C#.
- ประสิทธิภาพสูง: จัดการชุดข้อมูลขนาดใหญ่และการดำเนินงานแบบกลุ่มได้อย่างมีประสิทธิภาพสำหรับ การสร้างเอกสาร Word แบบไดนามิกด้วย .NET Core.
- แม่แบบที่ปรับแต่งได้: สร้างแม่แบบพร้อมช่องว่างสำหรับการแทรกข้อมูล โดยใช้ความสามารถของ การทำงานอัตโนมัติของ mail merge ใน Word ของ .NET.
การติดตั้ง
ติดตั้ง Aspose.Words โดยใช้ NuGet:
PM> Install-Package Aspose.Words
สร้างเอกสาร Word จากแม่แบบด้วยวัตถุ C#
อันดับแรก มาดูวิธีการกรอกแม่แบบ Word ด้วยวัตถุ C# กัน เพื่อแสดงสิ่งนี้ เราจะสร้างเอกสาร Word (DOC/DOCX) ด้วยช่องว่างต่อไปนี้เป็นเนื้อหาของเอกสาร:
<<[sender.Name]>> says: "<<[sender.Message]>>."
ที่นี่ sender คืออินสแตนซ์ของคลาสที่เราจะใช้ในการกรอกแม่แบบโดยใช้วิธี C# generate word document from database.
ตอนนี้เราสามารถใช้เอนจินการรายงานของ Aspose.Words เพื่อสร้างเอกสาร Word จากแม่แบบและอินสแตนซ์ของคลาส Sender ด้วยการทำตามขั้นตอนเหล่านี้:
- สร้างอินสแตนซ์ของคลาส Document และเริ่มต้นด้วยเส้นทางของแม่แบบ Word.
- สร้างและเริ่มต้นวัตถุของคลาส Sender.
- สร้างอินสแตนซ์ของคลาส ReportingEngine.
- กรอกแม่แบบโดยใช้ ReportingEngine.BuildReport() ซึ่งรับพารามิเตอร์เป็นอินสแตนซ์ของเอกสาร, แหล่งข้อมูล, และชื่อของแหล่งข้อมูล.
- บันทึกเอกสาร Word ที่สร้างขึ้นโดยใช้วิธี Document.Save().
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการ สร้างเอกสาร Word จากแม่แบบ ใน C#.
ผลลัพธ์
สร้างเอกสาร Word จากแหล่งข้อมูล XML ใน C#
เพื่อสร้างเอกสาร Word จากแหล่งข้อมูล XML เราจะใช้แม่แบบ Word ที่ซับซ้อนกว่าด้วยช่องว่างต่อไปนี้:
<<foreach [in persons]>>Name: <<[Name]>>, Age: <<[Age]>>, Date of Birth: <<[Birth]:"dd.MM.yyyy">>
<</foreach>>
Average age: <<[persons.Average(p => p.Age)]>>
แหล่งข้อมูล XML ที่ใช้ในตัวอย่างนี้แสดงด้านล่าง.
เพื่อสร้างเอกสาร Word จากแหล่งข้อมูล XML ให้ทำตามขั้นตอนเหล่านี้:
- สร้างอินสแตนซ์ของคลาส Document และเริ่มต้นด้วยเส้นทางของแม่แบบ Word.
- สร้างอินสแตนซ์ของคลาส XmlDataSource และเริ่มต้นด้วยเส้นทางของไฟล์ XML.
- สร้างอินสแตนซ์ของคลาส ReportingEngine.
- ใช้ ReportingEngine.BuildReport() เหมือนเดิมในการกรอกแม่แบบ Word.
- บันทึกเอกสาร Word ที่สร้างขึ้นโดยใช้วิธี Document.Save().
นี่คือตัวอย่างโค้ดที่แสดงวิธีการ สร้างเอกสาร Word จากแหล่งข้อมูล XML ใน C#.
ผลลัพธ์
สร้างเอกสาร Word จากแหล่งข้อมูล JSON ใน C#
ถัดไป มาลองดูวิธีการสร้างเอกสาร Word โดยใช้แหล่งข้อมูล JSON ในตัวอย่างนี้ เราจะสร้างรายการลูกค้าที่แบ่งตามผู้จัดการของพวกเขา แม่แบบ Word จะมีลักษณะดังนี้:
<<foreach [in managers]>>Manager: <<[Name]>>
Contracts:
<<foreach [in Contract]>>- <<[Client.Name]>> ($<<[Price]>>)
<</foreach>>
<</foreach>>
แหล่งข้อมูล JSON ที่เกี่ยวข้องที่เราจะใช้ในการกรอกข้อมูลในแม่แบบมีดังนี้:
ในการสร้างเอกสาร Word จาก JSON เราจะใช้คลาส JsonDataSource เพื่อโหลดแหล่งข้อมูล และขั้นตอนที่เหลือจะเป็นไปตามโครงสร้างก่อนหน้านี้ ตัวอย่างโค้ดด้านล่างแสดงวิธีการ สร้างเอกสาร Word จากแม่แบบ JSON ใน C#.
ผลลัพธ์
สร้างเอกสาร Word จากแหล่งข้อมูล CSV ใน C#
เพื่อสร้างเอกสาร Word จากแหล่งข้อมูล CSV เราจะใช้แม่แบบ Word ต่อไปนี้:
<<foreach [in persons]>>Name: <<[Column1]>>, Age: <<[Column2]>>, Date of Birth: <<[Column3]:"dd.MM.yyyy">>
<</foreach>>
Average age: <<[persons.Average(p => p.Column2)]>>
แม่แบบนี้จะได้รับการกรอกข้อมูลโดยใช้ข้อมูล CSV ต่อไปนี้:
ตอนนี้ มาลองดูโค้ด C# ขั้นตอนต่างๆ จะยังคงเหมือนกัน เพียงแต่มีความแตกต่างอยู่ประการหนึ่ง: เราจะใช้คลาส CsvDataSource เพื่อโหลดข้อมูล CSV ตัวอย่างโค้ดต่อไปนี้จะแสดงวิธีการ สร้างเอกสาร Word จากแหล่งข้อมูล CSV.
ผลลัพธ์
ลองใช้ Aspose.Words สำหรับ .NET ฟรี
คุณสามารถลองใช้ Aspose.Words for .NET โดยใช้ ใบอนุญาตชั่วคราว ฟรี.
สรุป
ในบทความนี้ คุณได้เรียนรู้วิธีการสร้างเอกสาร Word จากแม่แบบโดยใช้ C# คุณได้ค้นพบวิธีการใช้แหล่งข้อมูลต่างๆ เช่น วัตถุ, XML, JSON, และ CSV สำหรับ การสร้างเอกสารแบบไดนามิกใน .NET ค้นคว้าในความสามารถของ การประมวลผลแม่แบบ Word ใน .NET โดยการสำรวจ เอกสาร และหากต้องการ คุณสามารถติดต่อผ่าน ฟอรัม ของเราได้เลย.