2010-01-25 6 views
0

У меня есть страница Master для моего сайта, которая используется для оформления остальной части сайта и проверки подлинности пользователя. Это отлично работает, за исключением того, что у меня есть одна страница, на которой я хотел бы сохранить стиль от мастера, но не выполнять аутентификацию, поскольку это страница, которая сообщает пользователю, что они не аутентифицированы. Как я могу переопределить метод Page_Load MasterPage с этой страницы? Любые другие мысли о том, как я не мог аутентифицироваться на этой странице без переноса аутентификации от мастера?ASP.NET Master page Page_Load Override

ответ

1

Возможно, проверьте свою главную страницу где-нибудь в Request.Current.Url для текущего имени страницы (Whatever.aspx) и пропустите аутентификацию для нее.

1

Вы можете создать свойство на своей главной странице, которое по умолчанию равно true, что означает, что аутентификация должна произойти. Затем вы можете установить это свойство внутри логики инициализации для единственной страницы в значение false. Когда главная страница пытается выполнить аутентификацию, она должна сначала проверить состояние этого свойства.

Для примера того, как связаться с главной страницей, например, см. Раздел «Абстрактное взаимодействие» this article.

1

Обнаружение страницы с использованием Request.Current.Url - хорошее решение.

Другой способ - использовать LoginView, который имеет LoggedInTemplate, AnonymousTemplate и поддержку ролей для просмотра содержимого.

Смежные вопросы