SiteMapProvider.RootProvider Propriedade
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Obtém o objeto raiz SiteMapProvider na hierarquia atual do fornecedor.
public:
virtual property System::Web::SiteMapProvider ^ RootProvider { System::Web::SiteMapProvider ^ get(); };
public virtual System.Web.SiteMapProvider RootProvider { get; }
member this.RootProvider : System.Web.SiteMapProvider
Public Overridable ReadOnly Property RootProvider As SiteMapProvider
Valor de Propriedade
E SiteMapProvider esse é o fornecedor de mapas de local de topo na hierarquia do fornecedor a que o fornecedor atual pertence.
Exceções
Existe uma referência circular ao atual fornecedor de mapas do sítio.
Exemplos
O exemplo de código seguinte demonstra como implementar a RootProvider propriedade numa classe que implementa a classe abstrata SiteMapProvider . Utiliza SimpleTextSiteMapProvider lógica simples para determinar se o fornecedor atual faz parte de uma hierarquia de prestador. Se o fornecedor fizer parte de uma hierarquia, utiliza a RootProvider propriedade do fornecedor principal como sua própria. Se o fornecedor não fizer parte de uma hierarquia, o fornecedor é o seu próprio fornecedor raiz.
Este exemplo de código faz parte de um exemplo maior fornecido para a SiteMapProvider classe.
// Implement the ParentProvider property.
public override SiteMapProvider ParentProvider
{
get
{
return parentSiteMapProvider;
}
set
{
parentSiteMapProvider = value;
}
}
// Implement the RootProvider property.
public override SiteMapProvider RootProvider
{
get
{
// If the current instance belongs to a provider hierarchy, it
// cannot be the RootProvider. Rely on the ParentProvider.
if (this.ParentProvider != null)
{
return ParentProvider.RootProvider;
}
// If the current instance does not have a ParentProvider, it is
// not a child in a hierarchy, and can be the RootProvider.
else
{
return this;
}
}
}
' Implement the ParentProvider property.
Public Overrides Property ParentProvider() As SiteMapProvider
Get
Return parentSiteMapProvider
End Get
Set(ByVal value As SiteMapProvider)
parentSiteMapProvider = Value
End Set
End Property
' Implement the RootProvider property.
Public Overrides ReadOnly Property RootProvider() As SiteMapProvider
Get
' If the current instance belongs to a provider hierarchy, it
' cannot be the RootProvider. Rely on the ParentProvider.
If Not (Me.ParentProvider Is Nothing) Then
Return ParentProvider.RootProvider
' If the current instance does not have a ParentProvider, it is
' not a child in a hierarchy, and can be the RootProvider.
Else
Return Me
End If
End Get
End Property
Observações
Todas as classes que implementam a SiteMapProvider classe podem suportar o conceito de hierarquia de fornecedor de mapas de sítio. Quaisquer relações hierárquicas entre prestadores são mantidas fora do âmbito de uma SiteMapProviderCollection coleção pelos próprios prestadores. Para um exemplo de uma hierarquia funcional de fornecedores, veja XmlSiteMapProvider.