Как программно решить, какую страницу контента загрузить, при загрузке главной страницы
У меня есть главная страница и две страницы содержимого с одинаковым ContentPlaceHolderID. Есть ли способ указать, какая страница контента должна быть загружена из Page_Load
событие главной страницы?
Если я смотрю значение:
Request.CurrentExecutionFilePath;
Я вижу путь к первой странице содержимого.
Согласно условию, указанному ниже, я хочу изменить его на путь ко второй странице содержимого.
Я ищу способ загрузить определенную страницу в зависимости от проверки, которую я делаю на Мастер Page_Load
,
Если я пытаюсь перенаправить на страницу оттуда, я застреваю в бесконечном цикле, потому что главная страница загружается снова перед страницей содержимого, повторно выполняет проверку и перенаправляет снова и снова.
// in master page
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
if (Request.Cookies["user"] != null)
{
HttpCookie cookie = Request.Cookies["user"];
string name = cookie.Value;
Response.Redirect("~/hello_page.aspx?UserName=" + name);
}
}
}
Заранее спасибо.
1 ответ
Вы можете проверить загрузку страницы для строки запроса, которую вы включаете в редирект. Если есть строка запроса, то вы уже перенаправлены, так что вы можете пропустить блок cookie-check-and-redirect.