в веб-форме Page_Load, когда! IsPostBack, я запускаю хранимую процедуру, и результат переходит в DataTable.Я не хочу писать на диск.Поэтому я создаю ответ CSV типа.Работает правильно.Теперь, как я могу уменьшить размер загружаемого CSV-файла?(Когда количество записей равно 2000000, размер загружаемого файла составляет 200 МБ)
DataTable dt = GetFromSP();
Response.ClearContent();
Response.AddHeader("Content-Disposition", "attachment;filename=" + CalcCod + ".csv");
Response.ContentType = "text/csv";
int iColCount = dt.Columns.Count;
for (int i = 0; i < iColCount; i++)
{
Response.Write(dt.Columns[i]);
if (i < iColCount - 1)
{
Response.Write(",");
}
}
Response.Write("\n");
foreach (DataRow dr in dt.Rows)
{
for (int i = 0; i < iColCount; i++)
{
if (!Convert.IsDBNull(dr[i]))
{
Response.Write(dr[i].ToString());
}
if (i < iColCount - 1)
{
Response.Write(",");
}
}
Response.Write("\n");
}
Response.End();