单击按钮时,我正在使用Server.Transfer
加载其他页面的内容。这按预期工作,网址保持不变。但是,如果我尝试在第二页中单击按钮时加载第三页,则该URL将更改为第二页的URL。我希望它能保留第一页的网址。
示例:
Page1.aspx
加载。
.../Page1.aspx
Page1.aspx
Server.Transfer("~/Page2.aspx")
。
.../Page1.aspx
Page2.aspx
Server.Transfer("~/Page3.aspx")
.../Page2.aspx
Page3.aspx
为什么网址会在第三步中发生变化?
答案 0 :(得分:2)
当您致电Server.Transfer()
时,将停止执行第一页,而在同一HTTP请求中执行第二页。第二页(Page2.aspx)的执行方式与直接对其URL进行的任何正常请求的方式相同,因此表单的操作设置为自己的URL(尽管从{{1调用) }})。
如果不是这种情况,那么当提交表单时,它会发布到Page1.aspx(正如您所期望的那样),但此页面不一定包含相同的控件并且能够处理请求。
答案 1 :(得分:-2)
这个可能会有所帮助:
Response.Redirect("~/page.aspx",false)