【发布时间】:2011-03-24 21:35:05
【问题描述】:
如何在asp.net中进行邮件合并而不在服务器上安装word?
任何 dll 或任何可用的组件?
编辑
模板文档已经可用。我不想创建一个word文档。只想把word文档和数据联系起来。
谢谢
【问题讨论】:
-
您有使用 MS Word 的要求吗?可以用其他产品吗?
-
嗨,迈克,感谢您的回复。是的。客户的要求是使用 msword。有什么建议吗?
如何在asp.net中进行邮件合并而不在服务器上安装word?
任何 dll 或任何可用的组件?
编辑
模板文档已经可用。我不想创建一个word文档。只想把word文档和数据联系起来。
谢谢
【问题讨论】:
就个人而言,我只想看看使用 System.Net.Mail 类及其模板功能。这里有一个不错的库:https://github.com/lukencode/FluentEmail,您可以将模板传递到其中,并以这种方式将您需要的数据插入其中发送电子邮件。
编辑:注意到您实际上并没有指定它是打印邮件合并还是电子邮件,如果您尝试创建的是打印邮件合并,我们深表歉意,但是对于其中包含自定义数据的大量电子邮件,模板绝对是要走的路。
【讨论】:
要完成问题的 Word 文档创建部分,有一个关于此的先前线程:How can a Word document be created in C#?
要发送完整的文档,请查看 System.Net.Mail 命名空间:http://msdn.microsoft.com/en-us/library/system.net.mail.aspx,或者如果您负担得起,我对http://www.aspnetemail.com/ 有很好的经验。
【讨论】:
我们使用Aspose.Words 从 .net 代码执行邮件合并。它并不便宜,但一旦你掌握了它,它就会非常强大。
编辑:我假设您希望将来自某种数据存储的数据合并到可以打印和分发的模板 word 文档中。
【讨论】:
另一个选项是Docentric Toolkit。它是纯 .NET,基于 OpenXML,不依赖于 MS Word,因此非常适合服务器端报告生成。
与数据的合并是通过占位符完成的,占位符在运行时会被数据填充。数据可以来自数据库或 XML。
在需要安装 Docentric Toolkit 插件的 MS Word 中创建模板(需要许可证)。
创建模板并将它们与 .NET 代码中的数据合并非常容易。
【讨论】: