• Microsoft .NET
  • ASP.NET
  • Создание серверных элементов управления во время выполнения с помощью модулей HTTP

Навигация по сайту в ASP.NET 2.0 - Навигации по сайту в ASP.NET 2.0

ОГЛАВЛЕНИЕ


Навигации по сайту в ASP.NET 2.0

Реализация интерфейса навигации по сайту в ASP.NET 2.0 становится легкой задачей благодаря особенностям данной технологии. ASP.NET предоставляет программную библиотеку API, которая позволяет осуществлять запросы по сайту. ASP.NET не требует определенного формата для определения карты сайта, хотя по умолчанию предполагает использование XML файла. Детали настройки карты сайта могут быть определены вручную, так как функциональность навигации в ASP.NET 2.0 использует модель провайдеров (Provider model). Модель провайдеров позволяет разработчикам настроить работу выполняемую в пределах конкретной подсистемы ASP.NET, при этом не изменяя API.

Короче говоря, вы можете воспользоваться как методом, подразумевающим применение XML файла для конкретизации карты веб-сайта, так и c помощью некоего кода, а также вы можете использовать свой собственный метод либо какой-нибудь другой подход. Данная статья исследует использование стандартной техники (реализация карты сайта на основе XML файла).

В дополнение к возможности указания собственной структуры, ASP.NET 2.0 предоставляет набор элементов управления, которые помогут вам с легкостью создать карту сайта в вашей ASP.NET странице:

  • SiteMapPath - предоставляет иерархическую навигацию, отображая положение пользователя относительно структуры сайта. Например, при посещении раздела "Романы" (Novels) на сайте Amazon.com будет отображено что-то типа: Home > Books > Novels.
  • TreeView - отображает структуру сайта в иерархическом дереве.
  • Menu - отображает структуру сайта при помощи меню.
    При отображении интерфейса навигации сайта элементы TreeView и Menu используют элемент управления SiteMapDataSource для того, чтобы считывать содержимое карты сайта.
На самом деле, данные элементы управления вызывают API интерфейса навигации ASP.NET 2.0. Поскольку интерфейс навигации реализован при помощи модели провайдеров, элементы управления не "обращают внимания" на внутренние детали и на то, как организована карта сайта. То есть независимо от того, используете ли вы карту сайта по умолчанию, или же создаете свою логику карты, элементы управления навигацией могут быть использованы. (Если вы хотите использовать собственную карту сайта, то вам нужно будет создать класс, который обеспечит ее соответствующими методами и свойствами для работы с картой сайта.)