Aspose Word 根据模板导出Word文档

本文详述如何使用Aspose.Words库结合C#和SQL,根据模板生成包含循环数据的Word文档。步骤包括引入Aspose库、定义模板操作方法、创建模板中的域和循环填充标识,以及在Web服务中调用该功能。

网上有很多的关于WORD模板操作的文章,看了后,总是被其中一些关键点给打断了,在经过多次测试后,总算是成功生成了自己的WORD,今天详细分享下,希望能帮到需要的小白们。

首先来看下导出的效果

图片标注的区域,都是通过WORD模板生成的,特别是循环生成区域,估计都是大家想要的。下面就一步步来吧。

第一:引入Aspose.Words.dll ,网上都可以下载,这里不细说了。

第二:WORD模板操作核心方法:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Web;
using System.IO;
//这里的前提,你需要引用Aspose.Words.dll文件
using Aspose.Words;
using System.Data;

///VanClean.Office 是我的命名空间,你可以自己调整
namespace VanClean.Office
{
    /// <summary>
    /// 通过WORD模板导出文档
    /// </summary>
    public class WordModelEvent
    {
        /// <summary>
        /// WORD模板操作
        /// </summary>
        /// <param name="modelDoc">模板路径</param>
        /// <param name="exptDoc">导出文件名</param>
        /// <param name="fieldNames"></param>
        /// <param name="fieldValues"></param>
        /// <param name="dt"></param>
        /// <returns></returns>
        public static string ExpertWordToModel(string modelDoc,string exptDoc, 
            String[] fieldNames, Object[] fieldValues,DataTable dt)
        {
            try
            {
                //WORD模板存放位置
                string tempPath = HttpContext.Current.Server.MapPath("~/templates/" + modelDoc + ".docx");
                //导出的WORD存放的位置
                const string saveFold = "uploads/word/";
                string outputPath = HttpContext.Current.Server.MapPath("~/" + saveFold);
                if (!Directory.Exists(outputPath))
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值