excel中的空白字段报告导出的文件,除非启用了编辑

时间:2018-06-01 06:41:23

标签: asp.net-mvc export export-to-excel

我创建了一个托管在私有服务器上的应用程序。我的应用程序中有一个功能,可以将数据导出到excel,它运行得非常好。但是有一些实体是bool值,要么在excel中检查,要么不检查取决于true和false。这些实体在导出的文件中显示为空白,我必须在导出的文件中启用编辑,而不是显示已选中和未选中。但是对于导出文件中的大量数据,当我点击启用编辑时,excel没有响应.....如何克服这个问题。是否可以直接在导出的文件中获取已检查和未选中的值,或者我必须始终启用编辑?

这是我的模特:

 [Required]
    [DataType(DataType.Text)]
    public string Name { get; set; }

    [Required]
    public string SeatNo { get; set; }

    [Required]
    public string SequenceNo { get; set; }
    [Required]
    [DisplayName("Flight No")]
    public int FlightId { get; set; }

    public Flight Flight { get; set; }
    public int CategoryID { get; set; }
    public Category Category { get; set; }
    public string RefSeatNo { get; set; }
    public string Date { get; set; }
    public string CheckinTime { get; set; }

    public string Remarks { get; set; }
    public string CheckoutTime { get; set; }

    public string NoOfGuests { get; set; }
    public Boolean IsCheckout { get; set; }
    public Boolean isFeedBack { get; set; }
    public bool isGuest { get; set; }
    public bool Cash { get; set; }
    public bool CreditCard { get; set; }
    public string EnterBy { get; set; }

这是导出文件的功能,我将获得使用付款方式信用卡的员工列表。但在excel文件中,除非我在导出文件中启用编辑,否则每行显示空白

 if (!General.ValidateSession())
        {
            return RedirectToAction("Login", "User");
        }
        string fDate = TempData["FromDate"].ToString();
        string tDate = TempData["toDate"].ToString();
        var grdview = new GridView();
        grdview.DataSource = this.GetListCreditCard();
        grdview.DataBind();
        Response.ClearContent();
        Response.Buffer = true;
        Response.AddHeader("content-disposition", "attachment; filename= CreditCardRecords " + fDate + " - " + tDate + ".xls ");
        Response.ContentType = "application/ms-excel";
        Response.Charset = "";
        StringWriter strWriter = new StringWriter();
        HtmlTextWriter htmlWriter = new HtmlTextWriter(strWriter);
        htmlWriter.Write("<table><tr><td colspan='13' align='center'><font size='45'>CreditCard Passengers Report</font></td></tr></table>");
        grdview.RenderControl(htmlWriter);
        Response.Output.Write(strWriter.ToString());
        Response.Flush();
        Response.End();
        return RedirectToAction("CreditCardRecords");

注意:在本地服务器上,excel报告完全正常,它们在导出时直接显示已选中和未选中状态,无需在文件中启用编辑。

0 个答案:

没有答案