2009-04-10 3 views
2

У меня есть сайт с двумя основными страницами: один для одноколоночного макета и один для двухколоночного макета. Они вложены в основную страницу, которая обеспечивает общий верхний и нижний колонтитулы.Основная страница или базовая страница мастера или вложенные мастера?

У меня есть функциональность, которую я хочу, чтобы каждая из страниц контента имела; я должен:

  • создать базовый класс страницы и наследовать, что в моих страниц контента, или
  • создать базовый класс мастер-страницы и наследовать, что в одном из моих уровней вложенной главной страницы?

В конечном счете, я хочу, чтобы страницы содержимого имели доступ к объекту соединения и к объекту конфигурации, который я хочу создать при каждой загрузке страницы.

ответ

1

В конце концов, я хочу, чтобы содержание страницы в имеет доступ к объекту соединения и на объект конфигурации, который я хочу быть обработан в каждой загрузке страницы.

Основная страница предназначена для этого.

4

Основные страницы должны использоваться только для макетов, на мой взгляд.

Если вы хотите выполнять такую ​​работу, как создание соединений, сделайте это в базовом классе.

Однако важно, чтобы вы не создавали соединение с базой данных в начале своей страницы и не закрывали его в конце. Вы должны открывать и закрывать соединения при выполнении отдельных запросов. Это позволяет эффективно объединить пул соединений.

Кроме того, я не ставил бы соединение любого типа на самой странице, так как вы хотите как можно больше отделить свои функции от макета.

0

Обычно я использую базовую страницу, которая содержит ряд функций, которые облегчают создание страниц контента. См. http://dotnetslackers.com/articles/aspnet/Four-Helpful-Features-to-Add-to-Your-Base-Page-Class.aspx для некоторых примеров полезных функций BasePage.

+0

Таким образом, вы не ставили бы этот код на главные страницы вообще, а вместо этого выводили страницы контента из этого типа вместо System.Web.UI.Page? – Caveatrob

+0

Точно, и если у вашего MasterPage есть какие-либо пользовательские элементы управления, и им также нужны некоторые общие функции, вы также можете создать BaseUserControl. – deckerdev

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