【问题标题】:die() or exit() functionality in ASP.NETASP.NET 中的 die() 或 exit() 功能
【发布时间】:2013-10-03 10:54:30
【问题描述】:

在 ASP.Net 中是否有类似于 die() 或 exit() 的 PHP 函数?

【问题讨论】:

    标签: c# asp.net function


    【解决方案1】:

    这取决于您在代码中的位置,但您需要一种获取 Response 对象的方法。

    从这里,您可以拨打HttpResponse.End()。

    此方法将缓冲区发送到客户端,引发EndRequest 事件并引发ThreadAbortException 以停止页面的其余部分执行。

    【讨论】:

      【解决方案2】:

      您正在寻找Response.End()

      End 方法导致 Web 服务器停止处理脚本并 返回当前结果。文件的其余内容不 已处理。

      php 的exit() 的文档说明:

      终止脚本的执行。关闭函数和对象 即使调用了exit,析构函数也将始终执行。

      exit 是一种语言结构,可以不带括号调用 如果没有状态通过。

      它们并不完全等同,但这主要取决于两个框架的工作方式之间的差异。

      调用 Response.End 时必须小心,因为如果有任何脚本需要处理,它会抛出异常(Response.Redirect 表现出相同的行为)。如果经常这样做,可能会导致性能问题。

      【讨论】:

      • 虽然这可能有效,但它是为经典 ASP 而设计的,而不是 ASP.NET。您必须将其放入您的 .aspx 或 .cshtml 文件中,而不是放入您的 C# 代码中。
      • Response.End 在后面的代码中工作,例如,您可以在提供文件后执行此操作,以确保 asp 不会尝试呈现页面。不过,这无疑是肮脏的。
      【解决方案3】:

      您可以使用 Response.Close()。这将停止执行下一条语句。

      【讨论】:

        【解决方案4】:

        您可以在 razor CSHTML 中使用return;。这将结束文件其余部分的执行

        【讨论】:

          【解决方案5】:
          猜你喜欢
          • 2022-09-23
          • 2023-03-11
          • 1970-01-01
          • 2014-07-17
          • 2010-12-20
          • 2014-01-03
          • 1970-01-01
          相关资源
          最近更新 更多