在c#项目中用Docx插件导出word文档

在项目中遇到一个问题,就是当有多个用户同时下载一个文档时,会出现下载不了的情况,经调研,可能是微软自带的Microsoft.Office.Interop.Word插件的问题,所以就改用Docx插件,解决了问题。代码如下:

  public void downDeviceAdjust()
        {
            try
            {
                var direc = HttpContext.Current.Server.MapPath(HttpPostedFileExtension.POSTED_FILE_ROOT_DIRECTORY);
                var savePath = direc + "测试申请表.docx";

                var templateName = direc + "测试申请表_模板.docx";

                DocX wordDocumentOld = DocX.Load(templateName);//加载已有的word模板
                DocX wordDocument = wordDocumentOld;  //复制加载的word模板,以免污染原始模板

                Table wordTable = wordDocument.Tables[0];//获取模板中的第一个表格
                wordDocument.Bookmarks["number"].SetText("12345");//向模板中的书签中写入数据
                wordDocument.Bookmarks["projectName"].SetText("项目名称");
                          
                 wordTable.Rows[1].Cells[1].Paragraphs[0].Append(beforeAdjustDetail.ConstructPlanItem.DeviceNumber);//向模板中的表格中写入数据
                        
                wordDocument.SaveAs(savePath);     //将写好的word另存到指定路径         
                downLoad(direc + "仪器设备购置计划调整申请表.docx", "仪器设备购置计划调整申请表.docx");         
        }


猜你喜欢

转载自blog.csdn.net/weixin_39963132/article/details/80098361