首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >内联代码使ASP.NET在当前页中插入500页。

内联代码使ASP.NET在当前页中插入500页。
EN

Stack Overflow用户
提问于 2017-03-31 18:30:18
回答 1查看 62关注 0票数 0

我在.ascx中有一些代码如下所示:

代码语言:javascript
复制
<%
 int a = 0;
 int b = 5;
 int c = b/a;
 %>

如预期的那样抛出一个500错误(除以0)。

CustomErrors看起来像这样

代码语言:javascript
复制
    <customErrors mode="On" redirectMode="ResponseRewrite">
        <error statusCode="500" redirect="/500.aspx" />
    </customErrors>

我想要点击的那一页呈现得很糟糕。查看源代码,我看到一半的普通页面,然后500页跟随它。

代码语言:javascript
复制
    <div class="mapTextOverlay" style="width:448px;padding-left:232.96px;">

    [main page abruptly ends here and the 500 page starts]

    <!DOCTYPE html>

    <html xmlns="http://www.w3.org/1999/xhtml">
    <head id="Head"><title>
        500
    </title>

    [etc.]

因此,服务器传输发生在页面呈现的中间。

如何在500错误的情况下防止部分页面呈现的可能性?

  • 这只发生在内联代码中,如果错误在代码中-错误后面的错误显示正常。
  • 代码中没有调用Response.Flush()
  • Response.BufferOutput是真的
  • 代码正在设置一个Response.Filter,但是我试着注释它,但它没有修复它。
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-06-06 18:03:30

我仍然不知道为什么会发生这种情况,但解决办法却很简单。

Response.Clear();放在500页的Page_Load()中。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43147407

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档