私のコントローラのほとんどのアクションでは、条件が満たされているかどうかを確認し、同じコントローラ内の別のアクションにリダイレクトしないと、試してみる必要があります:メソッド内からのアクションへのリダイレクト
public ActionResult Transactions()
{
GrossGalsConfermation();
return View();
}
public void GrossGalsConfermation()
{
if (Session["HasConfirmed"] == null && TerminalUserData.IsGrossGallonTerminal)
{
RedirectToAction("ConversionFactors");
}
}
しかし、if
文が真の場合でも、RedirectToAction
は実行されません。私はVSでデバッグを行っており、Action
からMethod
にジャンプし、IF
の文を評価してRedirectToAction
を実行しますが、それは呼び出し元のAcation
に戻り、戻ります。それを強制的にリダイレクトすることはできますか?私が似たような問題を見つけたので、解決策はvoid
からActionResult
に変更されましたが、このMethod
は何十回も表示されるので、復帰するためには、フォールバックAction
を返さなければなりません。
?それはアクションにリダイレクトされますか? – IanAuld
@IanAuldブラウザがリダイレクトされるようにするには、 'RedirectToRouteResult'を*返す必要があります。 –
アクションフィルタの代わりにヘルパーメソッドを使用しているようです... –