Ошибка при преобразовании данных сетки в Excel - PullRequest
0 голосов
/ 26 марта 2009

Это код:

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. Я использовал эти коды на уровне бизнес-логики

1 Ответ

2 голосов
/ 26 марта 2009

Вы получаете ошибку времени выполнения при попадании в строку response.Write, потому что вы передаете null в качестве потока для ответа:

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

Код, который вы разместили, очень небрежный. Я бы посоветовал вам переписать метод с нуля. Если вы этого не сделаете, вы, вероятно, столкнетесь с другими ошибками во время выполнения, как только пройдете эту.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...