StaticSiteMapProvider.FindSiteMapNode(String) Метод

Определение

Получает объект SiteMapNode, который представляет страницу по указанному URL-адресу.

public:
 override System::Web::SiteMapNode ^ FindSiteMapNode(System::String ^ rawUrl);
public override System.Web.SiteMapNode FindSiteMapNode (string rawUrl);
override this.FindSiteMapNode : string -> System.Web.SiteMapNode
Public Overrides Function FindSiteMapNode (rawUrl As String) As SiteMapNode

Параметры

rawUrl
String

URL-адрес, определяющий страницу, для которой необходимо извлечь SiteMapNode.

Возвращаемое значение

SiteMapNode

Объект SiteMapNode, который представляет страницу, идентифицированную параметром rawURL; в противном случае — значение null, если соответствующий узел карты веб-узла не найден.

Исключения

rawURL имеет значение null.

Комментарии

Указанный URL-адрес обычно является виртуальным или абсолютным URL-адресом. Это также может быть URL-адрес, использующий ASP.NET синтаксис, связанный с приложением, например"~/apprelativedirectory". Класс StaticSiteMapProvider автоматически нормализует необработанные URL-адреса относительно приложения на абсолютный виртуальный путь.

ОбъектXmlSiteMapProvider, производный от StaticSiteMapProvider поставщика карты сайта по умолчанию для ASP.NET, использует Url свойство SiteMapNode объекта в качестве ключа подстановки во внутренних коллекциях по умолчанию. Url Если свойство SiteMapNode задано, оно должно быть уникальным в пределах области поставщика карты сайта. Метод FindSiteMapNode пытается получить узлы карты сайта на основе их Url. В противном случае можно использовать Key свойство и соответствующий FindSiteMapNodeFromKey метод для получения узлов карты сайта. Если он не указан или Key не Url указан, поставщик карты сайта автоматически создает Key свойство для отслеживания узлов карты сайта.

Примечания для тех, кто наследует этот метод

При переопределении FindSiteMapNode(String) метода в производном классе обязательно нормализуйте URL-адреса SiteMapNode объектов, добавляемых к поставщику карты сайта, чтобы FindSiteMapNode(String) метод смог получить узел карты сайта независимо от того, предоставляется ли URL-адрес узла карты сайта как абсолютный виртуальный путь или относительный путь приложения.

Поведение обрезки безопасности включается в SiteMapProvider реализации и StaticSiteMapProvider реализации класса. Однако для усечения безопасности для работы в производных классах необходимо задать Roles свойство всех SiteMapNode объектов, создаваемых при создании поставщика карты сайта при переопределении BuildSiteMap() метода.

Применяется к

См. также раздел