將數據錶轉換爲Csv有一些問題我試圖將數據錶轉換爲csv格式。代碼工作正常並獲取csv。但問題是有一些異常顯示catch塊在Response.End()之後;在Response.End()
這裏是我的代碼
public void GetCSV(DataTable dt)
{
StringBuilder sb = new StringBuilder();
IEnumerable<string> columnNames1 = dt.Columns.Cast<DataColumn>().
Select(column => column.ColumnName);
sb.AppendLine(string.Join(",", columnNames1));
foreach (DataRow row in dt.Rows)
{
IEnumerable<string> fields = row.ItemArray.Select(field => field.ToString());
foreach (var item in fields)
{
sb.AppendFormat("\"{0}\",", item.Replace("\"", "\"\""));
}
sb = sb.Remove(sb.Length - 1, 1);
sb.Append("\n");
//sb.AppendLine(string.Join(",", fields));
}
string attachment1 = "attachment; filename=Application_Data.csv";
Response.ClearContent();
Response.AddHeader("content-disposition", attachment1);
Response.ContentType = "application/csv;charset=utf-8";
Response.Charset = "utf-8";
Response.Write(sb.ToString());
Response.End();
}
我只是調試和檢查。然後到Response.End的遇到的問題 誤差表現爲 Unable to evaluate expression because the code is optimized or a native frame is on top of the call stack
任何一個可以知道什麼是issue.Thanks提前尋求幫助。
嘗試 http://www.codeproject.com/Tips/665519/Writing-a-DataTable-to-a-CSV-file –
看看這個 http://stackoverflow.com/questions/2041482/unable -to-表達式求因爲最代碼被優化或 - 一個本地幀-是 – GMD