2012-01-12 28 views
5

Trong trang 1 trên nút bấm Tôi chuyển hướng trang sang trang 2, và trong trang 2 trong tải trang, tôi kiểm tra xem trang trước đó có hợp lệ không . Vì vậy, tôi kiểm tra (this.Page.PreviousPage != null) nhưng điều này luôn luôn là rỗng và trang được chuyển hướng đến trang 1. Tôi đang làm điều này để không ai có thể thay đổi các số trong url. Làm thế nào tôi có thể giải quyết vấn đề này. nhờLàm thế nào để kiểm tra trang được chuyển hướng từ trang trước hay không trong asp.net

Trang1:

int msgid = Convert.ToInt32(Hidden_MsgID.Value); 
    string url = "Page2.aspx?MsgID=" + msgid; 
    Response.Redirect(url);  

Page2:

if (this.Page.PreviousPage != null) 
       { 
       } 
       else 
       { 
        Response.Redirect("Page1.aspx"); 
       } 

thay vì response.redirect tôi sử dụng máy chủ. chuyển đổi và nó hoạt động: "#:. msgstr") "#:.

Trả lời

1

lẽ bạn có thể sử dụng một biến session để kiểm tra xem dòng chảy được theo sau là tốt .. Trước khi chuyển hướng của bạn, bạn có thể đặt

Session["PREVPAGE"] = "fooo.aspx"; 

Và truy xuất nó trong tải trang thứ hai trang ..

+2

'Session' không phải là 100% đáng tin cậy - nếu bạn làm một tái chế trong khi đó? –

Các vấn đề liên quan