gpt4 book ai didi

c# - 从 Application_Error 重定向页面时出错

转载 作者:行者123 更新时间:2023-11-30 21:59:01 24 4
gpt4 key购买 nike

我正在尝试进行重定向,我有一个单例类,它是我的配置类,获取关于它的信息并使用我的连接字符串,这些数据我保存在一个加密文件中,我正在使用 session-per-请求,然后在安装之前我需要检查 session 配置文件,如果没有我抛出异常。

 protected void Application_BeginRequest()
{
if (!Settings.Data.Valid())
throw new SingletonException();

var session = SessionManager.SessionFactory.OpenSession();
if (!session.Transaction.IsActive)
session.BeginTransaction(IsolationLevel.ReadCommitted);

CurrentSessionContext.Bind(session);
}

如果有,除了我必须重定向到单例类的设置页面。

protected void Application_Error(Object sender, EventArgs e)
{
Exception exc = Server.GetLastError();
while (exc != null)
{
if (exc.GetType() == typeof(SingletonException))
{
Response.Redirect(@"~/Settings/Index");
}

exc = exc.InnerException;
}
}

但是我遇到了这个重定向的问题,浏览器中的链接正在改变,但我有一个重定向循环,已经尝试清除 cookie 并启用外部站点的选项。 enter image description here有人可以帮助我吗?

最佳答案

问题是您正在使用 while 循环,因此如果 exc 不是 null,它就是无限循环,您必须使用 如果条件在这里:

if(exc != null)
{
if (exc.GetType() == typeof(SingletonException))
{
Response.Redirect(@"~/Settings/Index");
}

exc = exc.InnerException;
}

关于c# - 从 Application_Error 重定向页面时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29674673/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com