Mam problem: gdy wywołasz metodę Response.Redirect() z strony MasterPage, nie działa. Cóż, debugowanie widzę, że do metody Pre_Render() strona docelowa jest ładowana, ale następnie renderowana jest poprzednia strona.Jak mogę mieć pracę Response.Redirect() z MasterPage?
Oto niektóre kodu, aby lepiej wyjaśnić:
(od 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");
}
}
}
Mam skrypt, który dodaje ciągu kwerendy dodając „action = wyślij” po kliknięciu na Wyślij przycisk.
Jeśli jestem na stronie "~/somethingInterestingToSend()" - na przykład - chcę dostać się na stronę wyboru odbiorców, ale kiedy klikam przycisk Wyślij widzę zawsze tę samą stronę.
Co może być pomyłką?
Uwaga dodatkowa: zachowaj ostrożność podczas używania zmiennych do przechowywania zmiennych. Należy pamiętać, że użytkownik może mieć otwarte dwie zakładki z witryną i każdą stroną zastępującą poprzednią wartość. Lepiej będzie wysłać adres URL powrotu w querystringu –