Обмен информацией между страницами с содержимым (Content Pages) и мастер–страницами (Master Pages)
ОГЛАВЛЕНИЕ
Одним из препятствий на пути разработчиков, использующих мастер-страницы, является то, каким образом они будут передавать информацию с мастер-страницы к странице с содержимым, и наоборот. Мастер-страница может содержать элемент управления DropDownList (выпадающий список), и в момент, когда его индекс выбора изменяется, соответствующая страница с содержимым должна быть обновлена. Или, например, какое-то действие на странице с содержимым должно обновить вид мастер-страницы. В данной статье мы рассмотрим технику обмена информацией между мастер-страницей и страницей с содержимым. Читайте далее, чтобы узнать больше об этом!
Основы дизайна мастер-страницы и страницы с содержимым
По мере роста веб-сайта, без сомненья, новые страницы с содержимым будут добавлены и связаны с уже существующими мастер-страницами, либо существующие страницы, использовавшие мастер-страницу X, могут быть перенастроены, и теперь можно будет использовать мастер-страницу Y. Следовательно, было бы разумно разрабатывать мастер-страницы таким образом, чтобы они не были зависимы от страниц с содержимым. То есть, мастер-страница не должна "предполагать", что ее страница обладает определенным методом, или же что она имеет определенный набор элементов управления, определенных в декларативной разметке. Такая мастер-страница называется слабосвязанной со своей страницей с содержимым; если мастер-страница требует наличия определенных методов элементов управления на соответствующих страницах, то она называется сильно связанной.
Также вполне допустима слабая связь между мастер-страницей и страницей, в то время как сама страница будет сильно связана с мастер-страницей. Например, мастер-страница не обязательно должна основываться на функциональности методов или разметки страницы с содержимым, но страница может "предполагать" что мастер-страница обладает определенным методом либо элементом управления. В идеале, страница должна быть слабосвязанной с мастер-страницей, но информация должна быть передана между мастер-страницей и страницей с содержимым (или наоборот), так что в любом случае какой-то уровень связанности должен присутствовать – либо со стороны мастер-страницы по направлению к странице (не самый лучший вариант), либо наоборот (что более желательно). Приложение к данной статье содержит примеры страниц с содержимым, тесно связанных с мастер-страницами, но не обладающих мастер-страницами, слабосвязанными со страницами.
Почему предпочтительнее имееть сильную связь между страницей с содержимым и мастер-страницей? |
---|
Вам , вероятно, интересно, почему я посоветовал использовать связывание со стороны страницы с содержимым по направлению к мастер-странице, а не наоборот. Когда существует связь от A к B, изменение B обычно требует соответствующей модификации A. Во-первых, поскольку я предполагаю, что у многих веб-сайтов гораздо меньше мастер-страниц, чем страниц с содержимым, и не так велика вероятность частого обновления сильно связанного интерфейса мастер–страниц, то это будет сделано на странице с содержимым (с точки зрения оптимизации больший смысл обретает мысль о том, что необходимо использовать связывание от страниц по направлению к мастер-страницам). Во-вторых, данное направление связывания "ощущается" лучшим образом. При связывании новой веб-страницы с существующей мастер-страницей как-то не практично останавливаться и думать: "Хорошо, а какой функциональностью должна обладать данная страница, чтобы она могла работать с этой мастер-страницей?" Если приведенная информация сбивает вас с толку, то не задумывайтесь так сильно над ней - после того, как вы исследуете примеры из приложения к данной статье, я думаю, все будет более понятным. |