Udostępnij za pośrednictwem


StaticSiteMapProvider.FindSiteMapNode(String) Metoda

Definicja

SiteMapNode Pobiera obiekt reprezentujący stronę pod określonym adresem 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

Parametry

rawUrl
String

Adres URL identyfikujący stronę, dla której ma być pobierany SiteMapNodeelement .

Zwraca

SiteMapNode

Element SiteMapNode reprezentujący stronę zidentyfikowaną przez rawURLelement ; w przeciwnym razie , nulljeśli nie znaleziono odpowiedniego węzła mapy witryny.

Wyjątki

rawURL to null.

Uwagi

Podany adres URL jest zazwyczaj wirtualnym lub bezwzględnym adresem URL. Może to być również adres URL, który używa ASP.NET składni względnej aplikacji, takiej jak "~/apprelativedirectory". Klasa StaticSiteMapProvider automatycznie normalizuje względne nieprzetworzone adresy URL aplikacji do bezwzględnej ścieżki wirtualnej.

XmlSiteMapProvider Obiekt, który pochodzi z StaticSiteMapProvider obiektu i jest domyślnym dostawcą mapy lokacji dla ASP.NET, domyślnie używa Url właściwości SiteMapNode obiektu jako klucza odnośnika w swoich kolekcjach wewnętrznych. Url Jeśli właściwość SiteMapNode jest ustawiona, musi być unikatowa w zakresie dostawcy mapy lokacji. Metoda FindSiteMapNode próbuje pobrać węzły mapy witryny na podstawie ich Url. W przeciwnym razie można użyć Key właściwości i odpowiedniej FindSiteMapNodeFromKey metody w celu pobrania węzłów mapy witryny. Jeśli nie Url określono elementu lub Key nie zostanie określony, dostawca mapy lokacji automatycznie wygeneruje Key właściwość do śledzenia węzłów mapy lokacji.

Uwagi dotyczące dziedziczenia

Podczas zastępowania FindSiteMapNode(String) metody w klasie pochodnej należy znormalizować adresy URL SiteMapNode obiektów dodanych do dostawcy mapy witryny, aby FindSiteMapNode(String) metoda mogła pobrać węzeł mapy witryny niezależnie od tego, czy adres URL węzła mapy witryny jest dostarczany jako bezwzględna ścieżka wirtualna, czy ścieżka względna aplikacji.

Zachowanie przycinania zabezpieczeń jest uwzględniane w SiteMapProvider implementacjach klas i StaticSiteMapProvider . Jednak w przypadku przycinania zabezpieczeń funkcji w klasach pochodnych należy ustawić Roles właściwość wszystkich SiteMapNode obiektów tworzonych podczas tworzenia dostawcy mapy lokacji podczas zastępowania BuildSiteMap() metody.

Dotyczy

Zobacz też