Tôi gặp vấn đề: khi tôi gọi Response.Redirect() từ MasterPage, nó không hoạt động. Vâng, gỡ lỗi tôi có thể thấy rằng cho đến khi phương thức Pre_Render() trang đích được tải, nhưng sau đó được hiển thị trang trước đó.Làm thế nào tôi có thể có Response.Redirect() làm việc từ MasterPage?
Dưới đây là một số mã để giải thích tốt hơn:
(từ MasterPageMain.master.cs)
protected void Page_Init(object sender, EventArgs e)
{
string m_QueryStringValue = Request.QueryString.Get("action");
if ((!string.IsNullOrEmpty(m_QueryStringValue)) && (m_QueryStringValue.ToLower() == "send"))
{
if (Session["to"] != null && Session["to"] is List<string>) this.SendPageByMail();
else
{
Session.Add("AddressToSend", Request.RawUrl);
Response.Redirect("~/chooseRecipients.aspx");
}
}
}
Tôi có một javascript có thêm các chuỗi truy vấn thêm "action = gửi" khi tôi bấm vào Gửi nút.
Nếu tôi đang ở trang "~/somethingInterestingToSend()" -cho ví dụ- tôi muốn vào trang chọn người nhận, nhưng khi tôi nhấp vào nút Gửi, tôi luôn thấy cùng một trang.
Lỗi lầm nào là sai lầm?
Lưu ý phụ: hãy cẩn thận về việc sử dụng phiên để lưu trữ biến. Lưu ý rằng người dùng có thể có hai tab mở với trang web của bạn và mỗi trang ghi đè giá trị trước đó. Sẽ tốt hơn nếu gửi url trả về trong chuỗi truy vấn –