Spread for ASP.NET 表格控件 MVC5 教程 - 保持PDF、Excel 文件到客户端

发布时间:2015/10/19 00:10 发布者:iceman

返回博客中心

在文章 Spread for ASP.NET 表格控件 MVC5 教程 - Hello World 和 Spread for ASP.NET 表格控件 MVC5 教程 - 接口调用 中我们阐述了 Spread 在 MVC5 中的基础使用方法,本文中将为大家展示如何在 MVC5 中保存 Spread 控件内容到 PDF 和 Excel 文件中。

和普通的Web项目不同,在MVC Razor模板中,默认情况下视图页面不会添加 From 节点,而 Spread 传送数据到后台的媒介即为 Form 所以需要我们在前台中添加 Form。

测试代码如下:

@using (Html.BeginForm("Op_SaveToExcel", "Home", FormMethod.Post, new { id = "spreadForm" }))
{

  Html.TextBox("TextBox1");

  @Html.FpSpread("FpSpread1", x =>
{
  x.Width = 1000;
  x.Height = 400;
  x.ActiveSheetView.AllowColumnMove = true;
  x.ActiveSheetView.Cells[0, 0].Value = 100;
});
本示例中我们通过 Ajax 方式调用后台控制器中的方法:
<script type="text/javascript">
        function SaveToExcel() {
            execAjax('@Url.Action("Op_SaveToExcel", "Home")', $('#spreadForm').serializeArray(), function (data) {
            });
        }

        function execAjax(url, parameter, reCall) {
            $.ajax({
                type: "POST",
                url: url,
                data: parameter,
                async: false,
                cache: false,
                beforeSend: function () {
                },
                success: function (data) {
                }
            });
        }
</script>
后台方法如下:
public ActionResult Op_SaveToExcel([FarPoint.Mvc.Spread.MvcSpread(true)]FarPoint.Mvc.Spread.FpSpread FpSpread1)
    {
      FpSpread1.SaveExcel(this.Server.MapPath("/test.xlsx"), FarPoint.Excel.ExcelSaveFlags.UseOOXMLFormat);
      return new JsonResult()
      {
        Data = new { test = 456 }
      };
      //return null;
    }
Demo 下载:mvc_ajax.zip (1.65 kb)

下载试用版,体验更多 Spread for ASP.NET 产品新功能:点击下载


关于葡萄城

赋能开发者!葡萄城是专业的集开发工具、商业智能解决方案、低代码开发平台于一身的软件和服务提供商,为超过 75% 的全球财富 500 强企业提供服务。葡萄城专注控件软件领域30年,希望通过模块化的开发控件、灵活的低代码应用开发平台等一系列开发工具、解决方案和服务,帮助开发者快速响应复杂多变的业务需求,最大程度地发挥开发者的才智和潜能,让开发者的 IT 人生更从容更美好。

了解详情,请访问葡萄城官网