2012-04-02 52 views
0

在ASP.NET应用程序中。我需要将字符串(包含所有必需的html标记)作为可下载的HTML文件返回给客户端浏览器。如何将文本作为html页面返回给客户端?

所以基本上将字符串转换为HTMLDocument并将其发送到客户端。

它如何在asp.net c#应用程序中完成?

+1

已经在这里解答:http://stackoverflow.com/a/7147898/61697 – demoncodemonkey 2012-04-02 21:13:26

回答

2

本质上有你想这样做四件事情:

  1. 清除在响应缓冲区当前任何东西。致电Response.Clear();将照顾这一点。
  2. 设置适当的响应标题。在想要返回可下载文件的情况下,您可以将content-disposition标题设置为:Response.AddHeader("content-disposition", "attachment; filename=somefile.html");(其中“somefile.html”是表示浏览器用于保存文件的名称,它可以是硬编码或动态值,这取决于你。)这是建议浏览器保存文件的标准方式。我说“建议”,因为这不是必需的。了解HTTP没有“文件”的概念。只有请求和回复。你对这个头文件的处理是告诉浏览器你发送的数据流应该保存为一个文件。浏览器很可能会遵守这一点。
  3. 写入数据。 Response.Write();是通常的做法。
  4. 结束响应(这样浏览器可以发出信号,表明它已收到所有内容)。 Response.End();这样做。

请看看the HttpResponse class上的其他选项。甚至有称为WriteFile()的方法,这可能使代码更简单。我不熟悉它们,所以我不能举一个例子。

相关问题