SiteMap.Providers Własność
Definicja
Ważny
Niektóre informacje dotyczą produktów przedpremierowych, które mogą zostać znacznie zmodyfikowane przed premierą. Microsoft nie udziela żadnych gwarancji, ani wyraźnych, ani domniemanych, dotyczących informacji podanych tutaj.
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ść nieruchomoś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.