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

本文关键字:回声 是否 net asp | 更新日期: 2023-09-27 18:32:09

我有一个PHP代码,我已经转换为 asp.net 代码。PHP 代码只是回显客户端读取和解释的响应,但是在 asp.net 中,生成的输出被迫采用 html 格式——这正是因为我使用 asp.net 标签来打印输出。

有没有办法实现与 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!");
    }

谢谢。

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

一对一的等价物是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() .

您可以使用

Response.Write("");

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

你可以把任何你想要的文本写给客户端:

Response.Write(yourString);

正如 Yuck 提到的,您大部分时间都不需要在 ASP 中使用 Response.Write(这是 echo 的直接端口)。 给定您的示例,您可能希望执行以下操作:

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 环境中解决此问题的标准方法。

您可以使用

Response.Write()

Response.Write("your text here");