C# Xls导出未在服务器上运行

C# Xls导出未在服务器上运行,c#,asp.net-mvc,azure,xls,C#,Asp.net Mvc,Azure,Xls,出口在当地运作良好。它在Azure上不起作用。下载一个空文件。告诉我问题出在哪里?您的问题可能与最近的Microsoft Excel安全更新有关 看 这是否可能使用COM?您是否需要安装Excel才能在本地工作?@evisnobu否,这显然不使用COM或Excel互操作。您在服务器上调试过吗?验证您是否已从数据库中检索到数据?为什么要生成HTML文件并使用XLS扩展名提供它们?这是一个糟糕的做法,微软已经发布了一个更新,使得这几乎不可行。为什么要从方法返回JSON并结束响应,而不是返回文件结果?

出口在当地运作良好。它在Azure上不起作用。下载一个空文件。告诉我问题出在哪里?

您的问题可能与最近的Microsoft Excel安全更新有关


这是否可能使用COM?您是否需要安装Excel才能在本地工作?@evisnobu否,这显然不使用COM或Excel互操作。您在服务器上调试过吗?验证您是否已从数据库中检索到数据?为什么要生成HTML文件并使用XLS扩展名提供它们?这是一个糟糕的做法,微软已经发布了一个更新,使得这几乎不可行。为什么要从方法返回JSON并结束响应,而不是返回文件结果?为什么在ASP.NET MVC中使用GridView?
 public ActionResult ExportToExcel()
    {   
        GridView gv = new GridView();
        gv.DataSource = db.Details.Select(x => new
        {
            x.Title,
            Category = x.Category.Title,
            SubCategory = x.SubCategory.Title,
            x.Count,
            x.Price,
            Automobiles = x.Automobiles.Count,
            x.Description
        }).ToList();
        gv.DataBind();
        Response.ClearContent();
        Response.Buffer = true;            
        Response.AddHeader("content-disposition", "attachment; filename=Marklist.xls");
        Response.ContentType = "application/ms-excel";
        Response.Charset = "";
        StringWriter sw = new StringWriter();
        HtmlTextWriter htw = new HtmlTextWriter(sw);
        gv.RenderControl(htw);
        Response.Output.Write(sw.ToString());
        Response.Flush();
        Response.End();
        return Json(true);
    }