SiteMap.Providers SiteMap.Providers SiteMap.Providers SiteMap.Providers Property

Definizione

Ottiene una raccolta in sola lettura degli oggetti SiteMapProvider denominati disponibili per la classe SiteMap.Gets a read-only collection of named SiteMapProvider objects that are available to the SiteMap class.

public:
 static property System::Web::SiteMapProviderCollection ^ Providers { System::Web::SiteMapProviderCollection ^ get(); };
public static System.Web.SiteMapProviderCollection Providers { get; }
member this.Providers : System.Web.SiteMapProviderCollection
Public Shared ReadOnly Property Providers As SiteMapProviderCollection

Valore della proprietà

Eccezioni

La funzionalità relativa alla mappa del sito non è attivata.The site map feature is not enabled.

Il provider predefinito specificato nella configurazione non esiste.The default provider specified in the configuration does not exist.

La funzionalità è supportata solo quando in esecuzione in modalità di attendibilità bassa o in una modalità di livello superiore.The feature is supported only when running in Low trust or higher.

Esempi

Nell'esempio di codice seguente viene illustrato come recuperare Providers la raccolta SiteMap dalla classe e quindi scorrerla.The following code example demonstrates how to retrieve the Providers collection from the SiteMap class, and then iterate through it.

<%@ 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("&nbsp;&nbsp;&nbsp;");
        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("&nbsp;&nbsp;&nbsp;")
        Response.Write("<BR>")
    End While
End Sub ' Page_Load

</SCRIPT>

Se si dispone di più del provider predefinito configurato per il sito, verrà visualizzato ogni provider.If you have more than just the default provider configured for your site, you will see each provider displayed. Se ad esempio si usa il provider di Microsoft Access di esempio (vedere StaticSiteMapProvider), verrà visualizzato l'output seguente:For example, if you are using the sample Microsoft Access provider (see StaticSiteMapProvider), you see the following output:

XmlSiteMapProvider   System.Web.XmlSiteMapProvider  
AccessSiteMapProvider   Samples.AspNet.AccessSiteMapProvider  

Commenti

I provider della mappa del sito elencati nella Providers raccolta sono quelli specificati nella gerarchia di configurazione per inizializzare la SiteMap classe.The site map providers that are listed in the Providers collection are those that are specified in the configuration hierarchy to initialize the SiteMap class. Solo il provider predefinito (identificato dalla Provider proprietà) è garantito per l'utilizzo da parte SiteMap di durante l'inizializzazione; la presenza Providers di un provider nella raccolta indica che è stato specificato nella configurazione e was disponibile durante l'inizializzazione.Only the default provider (identified by the Provider property) is guaranteed to be used by the SiteMap during initialization; the presence of a provider in the Providers collection means that it was specified in the configuration and was available during initialization.

Si applica a

Vedi anche