C# 将网格数据转换为excel时出错

C# 将网格数据转换为excel时出错,c#,.net,asp.net,excel,gridview,C#,.net,Asp.net,Excel,Gridview,代码如下: TextWriter writer = null; HttpResponse response = new HttpResponse(writer); response.ClearContent(); response.AddHeader("content-disposition", "attachment;filename=" + filename + ".xls"); // response.ContentType = "application/ms-excel"; Stri

代码如下:

TextWriter writer = null;

HttpResponse response = new HttpResponse(writer);

response.ClearContent();
response.AddHeader("content-disposition", "attachment;filename=" + filename + ".xls");
// response.ContentType = "application/ms-excel";
StringWriter stringWriter = new StringWriter();
HtmlTextWriter htmlTextWriter = new HtmlTextWriter(stringWriter);
HtmlForm htmlForm = new HtmlForm();
GridView1.Parent.Controls.Add(htmlForm);
htmlForm.Attributes["runat"] = "server";
htmlForm.Controls.Add(GridView1);
htmlForm.RenderControl(htmlTextWriter);

response.Write(stringWriter.ToString());

如果我运行这段代码,它会抛出一个NullReferenceException。我在业务逻辑层中使用了这些代码

当您点击
响应时,您会得到一个运行时错误。写入
行是因为您将null作为响应流传入:

TextWriter writer = null;
HttpResponse response = new HttpResponse(writer);

你发布的代码非常草率。我建议你从头重写这个方法。如果您不这样做,一旦您通过此错误,您可能会遇到其他运行时错误。

我理解您的问题不难确定您需要什么