彩票走势图

Word控件Spire.Doc 【邮件合并】教程(五): 在 C# 中为组创建邮件合并

翻译|使用教程|编辑:胡涛|2022-04-22 13:14:54.350|阅读 154 次

概述:本文将介绍在 C# 中为组创建邮件合并,欢迎下载体验!

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

相关链接:

在 Spire.Doc 中,我们可以使用邮件合并将数据源中的多条记录插入到 Word 模板文档中的指定区域。该区域必须由两个具有特殊名称的合并文件标记,如«GroupStart:GroupName»和«GroupEnd:GroupName»,其中GroupStart和GroupEnd表示一个组的起点和终点,它也是该区域的起点和终点。执行邮件合并后,该区域会针对数据源中的每条记录重复。

Spire.Doc for.NET 最新下载

为了更好地演示,我们创建了一个包含合并字段的模板文档,如下所示:

在 C# 中为组创建邮件合并

在这个模板中,“产品”是组名,我们在使用代码执行邮件合并时应该使用相同的名称。合并文件“GroupStart:Products”和“GroupEnd:Products”表示组和区域的开始和结束。

代码片段:

一开始,我们定义了一个名为“Product”的类,在其中我们创建了一个构造函数Product(int number,string type,string name,string price,string vendor,string expirydate)并添加了四个属性“ Number ”,“ Type ”, “名称”、“价格”、“供应商”和“到期日期”。

第 1 步实例化 Product 类的两个对象并将它们添加到列表中。

Product p1 = new Product(1, "Software", "Spire.Doc", "$799", "E-iceblue", "April 28th,2018");
Product p2 = new Product(2, "Software", "Spire.PDF", "$599", "E-iceblue", "September 15th,2017");

List<Product> list = new List<Product>();
list.Add(p1);
list.Add(p2);

第 2 步加载模板文档。

Document document = new Document("ProductsList.docx");

第 3 步使用列表作为数据源并为“产品”组执行邮件合并。

MailMergeDataTable table = new MailMergeDataTable("Products", list);
document.MailMerge.ExecuteGroup(table);

第 4 步保存文档。

document.SaveToFile("Output.docx");

执行上述代码后,我们会得到如下结果文件:

在 C# 中为组创建邮件合并

完整代码

using Spire.Doc;
using Spire.Doc.Reporting;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace MailMerge
{
class Program
{
static void Main(string[] args)
{
Product p1 = new Product(1, "Software", "Spire.Doc", "$799", "E-iceblue", "April 28th,2018");
Product p2 = new Product(2, "Software", "Spire.PDF", "$599", "E-iceblue", "September 15th,2017");

List list = new List();
list.Add(p1);
list.Add(p2);

Document document = new Document("ProductsList.docx");

MailMergeDataTable table = new MailMergeDataTable("Products", list);
document.MailMerge.ExecuteGroup(table);

document.SaveToFile("Output.docx");
}
}

public class Product
{
public Product(int number, string type, string name, string price, string vendor, string expirydate)
{
this.Number = number;
this.Type = type;
this.Name = name;
this.Price = price;
this.Vendor = vendor;
this.ExpiryDate = expirydate;
}

public int Number { get; set; }
public string Type { get; set; }
public string Name { get; set; }
public string Price { get; set; }
public string Vendor { get; set; }
public string ExpiryDate { get; set; }
}

}

欢迎下载|体验更多E-iceblue产品

如需获取更多产品相关信息请咨询  


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@pclwef.cn


为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP