我试图通过此代码点击按钮在客户端计算机上获取.csv文件:
Response.Clear();
Response.ClearContent();
Response.ClearHeaders();
Response.ContentType = "text/csv"; ;
Response.ContentEncoding = System.Text.Encoding.Unicode;
Response.AddHeader("Content-Disposition", "attachment; filename=WBS.csv");
Response.BinaryWrite(System.Text.Encoding.Unicode.GetPreamble());
string output = "WBSCode,Description,TerritoryCode,Amount" + "\n";
Response.Write(output);
问题是代码正在执行,但我没有在我的机器上获得.csv文件..问题是什么?我是第一次这样做
答案 0 :(得分:4)
您需要创建一个通用处理程序(.ashx文件),它将csv作为响应发送。然后你的按钮只需要有一个.ashx的网址。下面是一些代码的处理程序示例。
public class GetCsvFile : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/csv";
context.Response.AddHeader("Content-Disposition", "attachment; filename=WBS.csv");
context.Response.Write("WBSCode,Description,TerritoryCode,Amount\n");
}
public bool IsReusable
{
get
{
return true;
}
}
}