我需要在客户端计算机中将文件另存为.csv。我正在使用下面的代码。
protected void btnGen_Click(object sender, EventArgs e)
{
try
{
string fileName = "test";
string attachment = "attachment; filename=" + fileName + ".csv";
List<string> lst1 = new List<string> { "wert", "fds", "hjgfh", "hgfhg" };
List<string> lst2 = new List<string> { "hgfds", "hdfg", "yretg", "treter" };
List<string> lst3 = new List<string> { "hgfdgf", "gfdg", "gfdgf", "ghfdg" };
List<List<string>> lst = new List<List<string>> { lst1, lst2, lst3 };
StringBuilder sb = new ExportFacade().GenerateStringBuilder(lst);
Response.ContentType = "text/csv" ;
lblProgress.ForeColor = System.Drawing.Color.Green;
lblProgress.Text = "File created and write successfully!";
HttpContext.Current.Response.AddHeader("content-disposition", attachment);
Response.Write(sb.ToString());
lblProgress.ForeColor = System.Drawing.Color.Green;
lblProgress.Text = "File created and write successfully!";
Response.Flush();
Response.End();
}
catch (Exception ex)
{
lblProgress.ForeColor = System.Drawing.Color.Red;
lblProgress.Text = "File Saving Failed!";
}
}
我没有使用更新面板。
当我点击按钮时,我收到以下错误
Sys.WebForms.PageRequestManagerParserErrorException:消息 从服务器收到的邮件无法解析。常见原因 错误是通过调用Response.Write()修改响应时, 启用了响应过滤器,HttpModules或服务器跟踪。
如果你能帮助我摆脱这个问题,对我来说将是一个很大的帮助。 谢谢。
答案 0 :(得分:0)
我解决了。母版页中的Ajax脚本管理器已经创建了该问题。删除后,该功能正常工作。但标签没有更新,因为响应不适用于页面。