在ASP.net中返回纯文本或其他任意文件

时间:2011-02-22 12:34:25

标签: asp.net http web-applications

如果我用PHP中的纯文本响应http请求,我会做类似的事情:

<?php 
    header('Content-Type: text/plain');
    echo "This is plain text";
?>

我如何在ASP.NET中执行等效操作?

4 个答案:

答案 0 :(得分:18)

如果您只想返回纯文本,我会使用ashx文件(VS中的Generic Handler)。然后只需在ProcessRequest方法中添加要返回的文本。

public void ProcessRequest(HttpContext context)
    {
        context.Response.ContentType = "text/plain";
        context.Response.Write("This is plain text");
    }

这消除了正常aspx页面的额外开销。

答案 1 :(得分:16)

您应该使用Page class的响应属性:

Response.Clear();
Response.ClearHeaders();
Response.AddHeader("Content-Type", "text/plain");
Response.Write("This is plain text");
Response.End();

答案 2 :(得分:4)

C#中的示例(对于VB.NET,只删除结束;):

Response.ContentType = "text/plain";
Response.Write("This is plain text");

您可能需要事先致电Response.Clear,以确保缓冲区中没有标题或内容。

答案 3 :(得分:0)

Response.ContentType = "text/plain";
Response.Write("This is plain text");