ご存知のとおり、Server.Transferは実行時にThreadAbortExceptionをスローします。
また、ThreadAbortExceptionは例外を継承します:
では、なぜ例外がキャッチブロックに入らないのか:
try
{
Server.Transfer("NoPremissionSell.aspx");
}
catch (Exception e)
{ }
それが中になりますが:
try
{
Server.Transfer("NoPremissionSell.aspx");
}
catch (ThreadAbortException e)
{ }
編集 、
これは、2つのシナリオの両方で機能しています。以前はなぜ機能しなかったのかわかりません。無視して下さい。
誤解を招く申し訳ありません。