В веб-формах ASP.NET 4.0 я пытаюсь экспортировать постраничный элемент управления ListView в файл Excel, отключив источник данных ListView (грузовики):
dsTrucks.EnablePaging = false;
Для ListPage без пейджингауправления, я могу заставить его работать.
Вот попытка «разгрузить страницу» и затем экспортировать элемент управления ListView:
// Nuke the current page.
Response.Clear();
// Setup the response header.
Response.Buffer = true;
Response.AddHeader("content-disposition", "attachment; filename=Trucks.xls");
Response.ContentType = "application/vnd.ms-excel";
Response.Charset = "";
// Turn off view state.
this.EnableViewState = false;
// Create a string writer.
var stringWriter = new StringWriter();
// Create an HTML text writer and give it a string writer to use.
var htmlTextWriter = new HtmlTextWriter(stringWriter);
// Disable paging so we get all rows.
dsTrucks.EnablePaging = false;
// Render the list view control into the HTML text writer.
listViewTrucks.DataBind();
listViewTrucks.RenderControl(htmlTextWriter);
// Grab the final HTML out of the string writer.
string output = stringWriter.ToString();
// Write the HTML output to the response, which in this case, is an Excel file.
Response.Write(output);
Response.End();
Там нет ошибки, но вывод в файл Excelэто всего лишь одна страница элемента управления ListView вместо всех строк.
Есть идеи, с чего начать, чтобы это заработало?
Спасибо, Адам