使用httpModules时的一个问题,非常急!在线等!

yclegend 2004-12-16 08:44:34
我写了一个httpModules处理程序,实现功能是对错误代码进行处理,并转到错误页面显示友好的错误信息。我的两个主要方法如下:
public void Init(HttpApplication application)
{
application.PostRequestHandlerExecute += new EventHandler(application_PostRequest);
}
private void application_PostRequest(object sender, EventArgs e)
{
HttpApplication application = (HttpApplication)sender;
HttpRequest request = application.Request;

string applicationPath = request.ApplicationPath;
string ss = request.Url.Query;
System.Uri uri = request.Url;
if (request.Url.AbsolutePath == applicationPath + "/" + AppControl.ERROR_PAGE && !uri.Query.StartsWith("?ErrorMsg="))
{
string expClass = "";
ErrorException errExp;

object objException = application.Request.Params["Class"];
object objError = request.Params["ErrorCode"];
if (objException != null)
{
expClass = objException.ToString();
errExp = (ErrorException)(application.Context.Application["ErrorException"]);

application.Response.Redirect("ErrorPage.aspx?ErrorMsg=" + errExp.GetMessage("Exception", expClass));
return;
}
if (objError != null)
{
expClass = objError.ToString();
errExp = (ErrorException)(application.Context.Application["ErrorException"]);

application.Response.Redirect("ErrorPage.aspx?ErrorMsg=" + errExp.GetMessage("Error", expClass));
return;
}
errExp = (ErrorException)(application.Context.Application["ErrorException"]);

application.Response.Redirect("ErrorPage.aspx?ErrorMsg=" + errExp.GetMessage("Exception", expClass));

}

我遇到的问题是:在vs.net2003开发环境下运行时,提交一个错误代码能够返回正确的错误信息。而直接访问IIS中的页面时,却没有正确的错误信息返回,不知道是什么原因?
...全文
223 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
yclegend 2004-12-16
  • 打赏
  • 举报
回复
“直接访问IIS中的页面”是指通过IE直接输入服务器地址来访问这个页面。通过HttpModule这种方法,为什么调试可以,直接访问不行呢?
webdiyer 2004-12-16
  • 打赏
  • 举报
回复
“直接访问IIS中的页面”是什么意思呢?如果你只是想进行全局错误处理,那么在global.asax的Application_Error事件中来处理更方便,而无需要专门为此来写一个HttpModule。

-------------------
www.webdiyer.com

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧