Aspose.word在asp.net mvc中如何使用的个人总结

本文解决了从ASP.NET MVC项目中导出带有表格的Word文档的问题。原先的代码因Response类型的不兼容导致无法直接使用,通过改变代码逻辑,利用DocX库加载Word模板并更新书签内容的方式成功实现了数据导出。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

项目需要导出数据到word中,因为要导出的是表格形式,所以先在word中绘制好了表格,然后按照以前的代码改了改,发现不行。出现的问题如下:

 

这是当时的代码,问题的症结所在就是Response上。这段代码以前是写在asp.NET中的。在asp.net中,Response使用的是HttpResponse,但是该项目为Mvc架构,Mvc中为HttpResponseBase,二者不能兼容,不能强制转换。问题一直无法得到解决。

所以就改变了代码:如下。

 

public ActionResult WordExport(TrainingTheoryForSignatureDetailModel aModel)
        {
            string tmppath = Server.MapPath("~/学员报名信息表.docx");
            Document doc = new Document(tmppath); //载入模板
            if (doc.Range.Bookmarks["Name"] != null)
            {
                Bookmark mark = doc.Range.Bookmarks["name"];
                mark.Text = aModel.Name;               
            }
            
            var docStream = new MemoryStream();
            doc.Save(docStream, SaveFormat.Doc);
            return File(docStream.ToArray(), "application/msword", "Template.doc");
        }

这样问题就迎刃而解。

 

但是因为事先在word中绘制好了表格,所以就对需要插入数据的地方添加书签,在代码中获取书签的名字,从而对书签的文本进行操作。

转载于:https://www.cnblogs.com/BrokenIce/p/5982431.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值