簡體   English   中英

Webforms Response.Redirect()對路線和頁面的不同行為

[英]Webforms Response.Redirect() different behaviour for route and page

  • Webforms ASP.NET 4.61

我有以下路由配置:

aRoutes.MapPageRoute("routePageA", "page/a", "~/Pages/A.aspx");
aRoutes.MapPageRoute("routePageB", "page/b", "~/Pages/B.aspx");

我在重定向到B.aspx的A.aspx的單擊處理程序中有代碼,但是我得到了不同的行為,如下所示:

  1. 當重定向到路由而沒有結束請求時:

    的Response.Redirect( “/頁/ B”);

觸發的事件是:

  • A.aspx Page_Load()<-為什么? 我已經在回發了。
  • B.aspx Page_Load()

    1. 當重定向到路由而沒有結束請求時:

    Response.Redirect(“ / page / b,true”);

觸發的事件是:

  • A.aspx Page_Load()<-為什么? 我已經在回發了。
  • B.aspx Page_Load()

    1. 直接重定向到aspx時:

    的Response.Redirect( “/頁/ B.aspx”);

觸發的事件是:

  • B.aspx Page_Load()

我期望的行為是3。但是,為什么當ASPX是重定向目標時,這種行為才如此。 有人可以向我解釋為什么引導路線會產生不同的行為嗎?

您可以使用RedirectToRoute代替Response.Redirect()。 試試這個吧。

return RedirectToRoute("routePageB");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM