XmlSiteMapProvider.Initialize(String, NameValueCollection) Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Inicjuje XmlSiteMapProvider obiekt. Metoda Initialize(String, NameValueCollection) nie tworzy mapy lokacji, przygotowuje tylko stan XmlSiteMapProvider do wykonania.
public:
override void Initialize(System::String ^ name, System::Collections::Specialized::NameValueCollection ^ attributes);
public override void Initialize (string name, System.Collections.Specialized.NameValueCollection attributes);
override this.Initialize : string * System.Collections.Specialized.NameValueCollection -> unit
Public Overrides Sub Initialize (name As String, attributes As NameValueCollection)
Parametry
- name
- String
Element XmlSiteMapProvider do zainicjowania.
- attributes
- NameValueCollection
Element NameValueCollection , który może zawierać dodatkowe atrybuty ułatwiające inicjowanie name
programu . Te atrybuty są odczytywane z XmlSiteMapProvider konfiguracji w pliku Web.config.
Wyjątki
Element XmlSiteMapProvider jest inicjowany więcej niż raz.
Użyto SiteMapNode ścieżki fizycznej do odwołania się do pliku mapy witryny.
-lub-
Wystąpił błąd podczas próby przeanalizowanie ścieżki wirtualnej podanej dla atrybutu siteMapFile
.
Przykłady
W poniższym przykładzie kodu pokazano, jak utworzyć nowe wystąpienie XmlSiteMapProvider klasy i zainicjować ją w celu utworzenia mapy witryny na podstawie danych XML.
<%@ Page Language="c#" %>
<SCRIPT runat="server">
private void Page_Load(object sender, System.EventArgs e) {
// Create an instance of the XmlSiteMapProvider class.
XmlSiteMapProvider testXmlProvider = new XmlSiteMapProvider();
NameValueCollection providerAttributes = new NameValueCollection(1);
providerAttributes.Add("siteMapFile","test.sitemap");
// Initialize the provider with a provider name and file name.
testXmlProvider.Initialize("testProvider", providerAttributes);
// Call the BuildSiteMap to load the site map information into memory.
testXmlProvider.BuildSiteMap();
// Prints "/myvirtualdirectory/WebForm1.aspx"
Response.Write(testXmlProvider.RootNode.Url + "<BR>");
// Prints "/myvirtualdirectory/WebForm2.aspx"
Response.Write(testXmlProvider.CurrentNode.Url + "<BR>");
}
</SCRIPT>
Powyższy przykład kodu używa pliku XML znajdującego się w wirtualnym katalogu głównym aplikacji ASP.NET. Plik ma następujący format:
<siteMap>
<siteMapNode title="RootNode" description="The root page." url="WebForm1.aspx">
<siteMapNode title="CurrentNode" description="Some sub page." url="WebForm2.aspx"/>
</siteMapNode>
</siteMap>
Uwagi
Klasa XmlSiteMapProvider zastępuje dziedziczona Initialize metodę, aby zastosować kilka atrybutów, takich jak siteMapFile
atrybuty i description
, do kolekcji attributes
.