• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

MVC用Aspose.Word导出Word报表

c# 搞代码 4年前 (2022-01-09) 18次浏览 已收录 0个评论

本文主要介绍了ASP.NET MVC 导出Word报表的方法,具有很好的参考价值,下面跟着小编一起来看下吧

最近要做MVC导出Word报表功能。查了查资料发现一个好用的插件就是Aspose.Word。这个插件也很有名气,也很好用。

1.首先就是引用该插件

2.填充Word模版

3.后台操作

private List<double> QuaterAirPM10AvgVolReport(string stns, DateTime start, DateTime end, Aspose.Words.DocumentBuilder builder, out DataTable dt, out List<double> widthList,string isMax)    {      dt = QuaterPM10AvgVol (stns, start, end,isMax);      widthList = new List<double>();      double[] colWidth = new double[] { 50, 118, 117, 50, 118, 117 };      string[] colName = new string[] { "排序", "城市", start.Year + "年" + start.Month + "~"+end.Month+"月浓度(μg/m3)", "排序", "城市", "较" + start.AddYears(-1).Year + "年同期增幅" };      builder.MoveToBookmark("table3");      Aspose.Words.Tables.Table table = builder.StartTable();//开始画Table       builder.InsertCell();      builder.CellFormat.Borders.LineStyle = LineStyle.Single;      builder.CellFormat.Borders.Color = System.Drawing.Color.Black;      builder.CellFormat.VerticalMerge = CellMerge.First;      builder.CellFormat.Width = 285;      builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;      // builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;      builder.Write("按平均浓度排序");      builder.InsertCell();      builder.CellFormat.Bor<div>本文来源gaodai.ma#com搞#代!码网_</div>ders.LineStyle = LineStyle.Single;      builder.CellFormat.Borders.Color = System.Drawing.Color.Black;      builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;      // builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;      builder.CellFormat.VerticalMerge = CellMerge.None;      builder.CellFormat.Width = 285;      builder.Write("按" + start.AddYears(-1).Year + "年同期增幅排序");      builder.EndRow();      AsposeCreateCell(builder, colWidth[0], colName[0]);      AsposeCreateCell(builder, colWidth[1], colName[1]);      AsposeCreateCell(builder, colWidth[2], colName[2]);      AsposeCreateCell(builder, colWidth[3], colName[3]);      AsposeCreateCell(builder, colWidth[4], colName[4]);      AsposeCreateCell(builder, colWidth[5], colName[5]);      builder.EndRow();      //开始添加值      for (var i = 0; i < dt.Rows.Count; i++)      {        if (dt.Rows[i]["CityName"] == "12个考核地市" || dt.Rows[i]["CityName"] == "全省")        {          builder.InsertCell();builder.CellFormat.Borders.LineStyle = LineStyle.Single;          builder.CellFormat.Borders.Color = System.Drawing.Color.Black;          builder.CellFormat.VerticalMerge = CellMerge.First;          builder.CellFormat.Width = 168;builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;          builder.Write(dt.Rows[i]["CityName"].ToString());          builder.InsertCell();builder.CellFormat.Borders.LineStyle = LineStyle.Single;          builder.CellFormat.Borders.Color = System.Drawing.Color.Black;builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;          builder.CellFormat.VerticalMerge = CellMerge.None;          builder.CellFormat.Width = 117;          builder.Write(dt.Rows[i]["PM10ATI"].ToString());          builder.InsertCell();builder.CellFormat.Borders.LineStyle = LineStyle.Single;          builder.CellFormat.Borders.Color = System.Drawing.Color.Black;builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;          builder.CellFormat.VerticalMerge = CellMerge.None;          builder.CellFormat.Width = 168;          builder.Write(dt.Rows[i]["qnCityName"].ToString());          builder.InsertCell();builder.CellFormat.Borders.LineStyle = LineStyle.Single;          builder.CellFormat.Borders.Color = System.Drawing.Color.Black;builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;          builder.CellFormat.VerticalMerge = CellMerge.None;          builder.CellFormat.Width = 117;          builder.Write(dt.Rows[i]["tqbh"].ToString() + "%");        }        else        {          AsposeCreateCell(builder, colWidth[0], dt.Rows[i]["Sort"].ToString());          AsposeCreateCell(builder, colWidth[1], dt.Rows[i]["CityName"].ToString());          AsposeCreateCell(builder, colWidth[2], dt.Rows[i]["PM10ATI"].ToString());          AsposeCreateCell(builder, colWidth[3], dt.Rows[i]["qnSort"].ToString());          AsposeCreateCell(builder, colWidth[4], dt.Rows[i]["qnCityName"].ToString());          AsposeCreateCell(builder, colWidth[5], dt.Rows[i]["tqbh"].ToString() + "%");        }        builder.EndRow();      }      builder.EndTable();      return widthList;    }

搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:MVC用Aspose.Word导出Word报表
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址