リダイレクトを実行しようとしています。構成クラスであるシングルトン クラスがあり、これに関する情報を取得して、conactionString に乗ります。暗号化されたファイルに保存したこのデータは、session-per-request を使用しています。マウントする前に、セッション構成ファイルを確認する必要がある場合は、例外をスローします。
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 をクリアして、外部サイトのオプションを有効にしようとしています。
誰かが私を助けることができますか?