SiteMap.Providers Właściwość
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.
Pobiera kolekcję obiektów nazwanych SiteMapProvider tylko do odczytu, które są dostępne dla SiteMap klasy.
public:
static property System::Web::SiteMapProviderCollection ^ Providers { System::Web::SiteMapProviderCollection ^ get(); };
public static System.Web.SiteMapProviderCollection Providers { get; }
static member Providers : System.Web.SiteMapProviderCollection
Public Shared ReadOnly Property Providers As SiteMapProviderCollection
Wartość właściwości
A SiteMapProviderCollection z nazwanych SiteMapProvider obiektów.
Wyjątki
Funkcja mapy witryny nie jest włączona.
Domyślny dostawca określony w konfiguracji nie istnieje.
Ta funkcja jest obsługiwana tylko w przypadku uruchamiania w przypadku niskiego zaufania lub wyższego poziomu.
Przykłady
W poniższym przykładzie kodu pokazano, jak pobrać Providers kolekcję z SiteMap klasy, a następnie wykonać iterację.
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<SCRIPT runat="server">
private void Page_Load(object sender, System.EventArgs e)
{
// Navigate the SiteMap built by the default SiteMapProvider.
Response.Write(SiteMap.RootNode.ToString() + "<BR>");
Response.Write(SiteMap.RootNode.Url + "<BR>");
Response.Write(SiteMap.RootNode.Title + "<BR>");
foreach (SiteMapNode sitemapnode in SiteMap.RootNode.ChildNodes)
{
// Iterate through the ChildNodes SiteMapNodesCollection
// maintained by the RootNode.
Response.Write(sitemapnode.Url + "<BR>" );
}
IEnumerator providers = SiteMap.Providers.GetEnumerator();
while (providers.MoveNext())
{
Response.Write(providers.Current);
Response.Write(" ");
Response.Write("<BR>");
}
}
</SCRIPT>
<%@ Page Language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<SCRIPT runat="server">
Private Sub Page_Load(Sender As Object, E As EventArgs)
' Navigate the SiteMap built by the default SiteMapProvider.
Response.Write(SiteMap.RootNode.ToString() & "<BR>")
Response.Write(SiteMap.RootNode.Url & "<BR>")
Response.Write(SiteMap.RootNode.Title & "<BR>")
Dim sitemapnode As SiteMapNode
For Each sitemapnode In SiteMap.RootNode.ChildNodes
' Iterate through the ChildNodes SiteMapNodesCollection
' maintained by the RootNode.
Response.Write(sitemapnode.Url & "<BR>" )
Next
Dim providers As IDictionaryEnumerator = SiteMap.Providers.GetEnumerator()
While (providers.MoveNext())
Response.Write(providers.Current)
Response.Write(" ")
Response.Write("<BR>")
End While
End Sub ' Page_Load
</SCRIPT>
Jeśli masz więcej niż tylko domyślnego dostawcę skonfigurowanego dla witryny, zostanie wyświetlony każdy dostawca. Jeśli na przykład używasz przykładowego dostawcy Microsoft Access (zobacz StaticSiteMapProvider), zostaną wyświetlone następujące dane wyjściowe:
XmlSiteMapProvider System.Web.XmlSiteMapProvider
AccessSiteMapProvider Samples.AspNet.AccessSiteMapProvider
Uwagi
Dostawcy mapy lokacji wymienionych w Providers kolekcji to dostawcy, którzy są określeni w hierarchii konfiguracji, aby zainicjować klasę SiteMap . Tylko domyślny dostawca (zidentyfikowany przez Provider właściwość) ma gwarancję użycia przez SiteMap inicjację podczas inicjowania; obecność dostawcy w kolekcji oznacza, że została określona w Providers konfiguracji i była dostępna podczas inicjowania.