我想生成一个word文档(.docx)文件,它基于模板可以是一个单词模板,或者文本可以存储在代码中.
现在生成的文档应该基于用户使用带有文本框的ASP.net Web窗体提供的输入来输入值.
这些值将被接收并放置在单词模板中的占位符位置.
>我如何在ASP.net Web项目中使用单词模板?
>我如何从ASP.net webform中获取值并将其传递给word模板,用文本填充占位符然后生成word文档?
我已经看到了一些示例,其中要生成的文本是作为HTML创建的,然后导出的文件被赋予filetype msword以保存为word文件.但在这种情况下,我想知道,我如何给生成的文档提供页码和其他页眉或页脚值.
解决方法
您有几种创建word文档的选项 –
>使用word自动化 – 这是直接使用Ms Word.如果您在服务器上运行,则不推荐使用它 – 它很慢并且存在可扩展性和其他问题.
>使用OpenXML – 这是Microsoft的SDK,可以使用Office 2007文件格式.使用OpenXML可以通过多种方式实现目标 – 例如使用书签或内容控件.看看这个SO问题 – How to replace content in template docx document and Open XML SDK 2.0 (Aug 09)?或者这个 – How to create *.docx files from a template in C#或谷歌它(虽然不是那么困难,整个解决方案更多的是几行代码并且需要一些理解)>使用第三方工具或控件 – 我对它们并不熟悉.