自定义错误Page_Load在每个重定向上执行

时间:2011-06-27 12:28:17

标签: c# asp.net custom-error-pages

我在项目中添加了自定义错误页面。问题是每次我重定向到另一个页面时,都会执行error.aspx的page_load中的代码。

在我的项目中,我使用了UpdatePanels和一个母版页。 我的所有页面都使用包含错误页面的母版页。 我甚至尝试使用不使用我的母版页的错误页面。我仍然遇到同样的问题。

在我的web.config中,我有以下代码:

<customErrors mode="On" redirectMode="ResponseRewrite" defaultRedirect="~/Applicatie/Algemeen/Error.aspx" />

这是我将错误页面(.aspx)与母版页链接的方式:

<%@ Page Title="" Language="C#" MasterPageFile="~/Master/Site.Master" AutoEventWireup="true" CodeBehind="Error.aspx.cs" Inherits="WebApp.Applicatie.Algemeen.Error" %>

是否有充分理由说明为什么始终执行此代码。


我试图在Global.asax中使用Application_Error。 看起来每次导航到新页面时也会触发其中的代码。 我真的不知道是什么原因导致这个错误,当我尝试调试时想要查看谁是发送者它返回Global.asax并且当我深入挖掘时我得到这个: Image! (无法发布图片)

2 个答案:

答案 0 :(得分:2)

每次调用ResponseRedirect(url)时,当前线程都会被ThreadAbortException中止。尝试使用ResponseRedirect(url,false)

以下链接可能对您有所帮助:Handling ThreadAbortException with Response.Redirect() : Best possible approaches

答案 1 :(得分:0)

出于某种原因,我的申请中有错误。每次我加载页面时,我的浏览器都找不到图标。 因此,每次浏览器加载新页面时都会出现unhandeld错误。这就是为什么出于某种原因运行错误页面代码的原因。 现在我添加了自己的图标,所有问题都解决了,这真的很奇怪,这会导致很多问题。