Возможно ли сделать так, чтобы главная страница вызывалась первой вместо вызываемой страницы — asp.net 4.0

#c# #asp.net #master-pages #call #code-behind

#c# #asp.net #мастер-страницы #вызов #скрытый код

Вопрос:

Возможно ли сделать так, чтобы главная страница вызывалась первой вместо вызываемой страницы — asp.net 4.0. Я имею в виду, например, что у меня есть домашняя страница и у меня есть главная страница. Когда я вызывал домашнюю страницу, сначала она переходит к коду домашней страницы, а затем к коду главной страницы. Можно ли сначала вызвать код главной страницы?

ASP.net 4.0 , C # спасибо

Ответ №1:

Нет, это невозможно.

Иерархия заключается в том, что главная страница фактически вложена в каждую страницу содержимого.

Последовательность событий описана здесь.

Комментарии:

1. здравствуйте, спасибо за ответ. могу ли я написать функцию, которая будет вызываться перед инициализацией всех страниц содержимого? Но в этой функции мне нужно иметь возможность получить IP-адрес посетителя и иметь возможность получить доступ к сеансу посетителя. Спасибо.

2. Когда вам нужно, чтобы эта функция сработала? При каждой загрузке страницы или при запуске сеанса?

3. На самом деле только тогда, когда начинается сеанс. Я инициализирую некоторые переменные сеансов в зависимости от посетителя. Например, присвоение значения страны посетителя в соответствии с IP-адресом посетителя.

4. @MonsterMMORPG — Тогда вы должны просто сделать это в global.asax in session_start .

5. кроме того, этот запуск глобальных сеансов.asax является потокобезопасным, не так ли? он будет уникальным для каждого посетителя?

Ответ №2:

Если вам нужно написать общую функцию на каждой странице содержимого.Вы можете избежать t, создав базовый класс и производя все страницы содержимого из этого базового класса вместо базового класса по умолчанию System.Web.UI.Page

Другой метод, как указано выше, записывает функцию в global.asax