我正在尝试使用MailMerge interface在C#中动态加载邮件合并收件人及其记录。我设法使用MailMerge.CreateDataSource方法加载了标头,并在HeaderRecord中给出了逗号分隔的字符串。当我运行Word时会显示这些字段,但问题是我也找不到任何方法来填充其记录。目前,我的工作方式是制作以下csv文件,并使用MailMerge.OpenDataSource
方法加载此数据源:
Name, Age, Gender, Country, Email
Dummy1, Male, 20, England, [email protected]
Dummy2, Male, 21, Spain, [email protected]
Dummy3, Male, 22, France, [email protected]
我的要求是在不创建任何外部文件的情况下加载数据,我正在寻找类似以下内容的东西:
MailMerge.AddRecord("Dummy1, Male, 20, England, [email protected]")
我的建议是将完全托管的.NET解决方案与OpenXML一起使用。由于OpenXML的学习曲线很陡,因此寻找使用这种方法的工具箱可能是有意义的。
我在Docentric Toolkit方面拥有丰富的经验。我已经使用了三年了。所以这是它的优点和缺点:
优点:
缺点:
您可以在Code Project上看到this article,以获取关于使用此工具包合并具有适当模板的数据(来自XML,数据库,内存中,...)的第一印象。