在asp.net中是否有等效的回声c#

时间:2012-04-25 16:10:41

标签: c# asp.net

我有一个PHP代码,我已经转换为asp.net代码。 PHP代码简单地回应客户端读取和解释的响应,但是在asp.net中,生成的输出被强制为html格式 - 这正是因为我使用asp.net标签来打印输出。 / p>

有没有办法可以实现与php中的echo相同的功能,或者是否有一个非常轻量级的代码可以帮助我正确地解析html文本?

编辑:

我想做的就像

  

//获取发布数据

     回声“有些东西”

我当前的测试aspx文件

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="grabber.aspx.cs" Inherits="qProcessor.grabber" %>

后面的代码只有一种方法:

    protected void Page_Load(object sender, EventArgs e)
    {
        //this.Response.Write("Welcome!");
    }

感谢。

5 个答案:

答案 0 :(得分:14)

一对一的等价物是Response.Write

Response.Write("some text");

也就是说,ASP .NET和PHP是非常不同的框架。使用ASP .NET(包括MVC框架),很少需要以这种方式直接写入响应流。

如果你想返回一个非常轻量级的响应,就会出现这种情况。你可以这样做:

Response.ContentType = "text/xml";
Response.Write("<root someAttribute = 'value!' />");

任何方法其他而不是直接使用Response可以(并且可能会)改变输出。简而言之 - 如果您只想将原始数据转储到HttpResponse,则需要使用Response.Write()

答案 1 :(得分:5)

您可以使用Response.Write("");

或在.aspx页面中使用<%="string"%>

答案 2 :(得分:2)

您可以将任何想要的文字写入客户:

Response.Write(yourString);

答案 3 :(得分:1)

您可以使用Response.Write()

Response.Write("your text here");

答案 4 :(得分:1)

作为mentioned by Yuck,您实际上不需要在ASP中使用Response.Write(这是回声的直接端口)。举个例子,你可能想做这样的事情:

protected void Page_Load(object sender, EventArgs e)
{

    this.Controls.Add(new LiteralControl(Server.HTMLEncode("<h1>Welcome!</h1>")));
    //will actually print <h1>Welcome!</h1>, rather than Welcome! that's bolded/centered/etc.
}

或者您甚至可以将文字控件,标签等添加到标记中,然后在后面的代码中设置Text属性。这是在ASP环境中解决此问题的标准方法。