Compartilhar via


NavigationTermSetView classe

Representa informações contextuais que afeta o cálculo de determinadas propriedades para os objetos NavigationTerm em um objeto NavigationTermSet .

Inheritance hierarchy

System.Object
  Microsoft.SharePoint.Publishing.FreezableObject
    Microsoft.SharePoint.Publishing.Navigation.NavigationTermSetView

Namespace:  Microsoft.SharePoint.Publishing.Navigation
Assembly:  Microsoft.SharePoint.Publishing (em Microsoft.SharePoint.Publishing.dll)

Sintaxe

'Declaração
<PermissionSetAttribute(SecurityAction.Demand, Name := "FullTrust")> _
Public NotInheritable Class NavigationTermSetView _
    Inherits FreezableObject
'Uso
Dim instance As NavigationTermSetView
[PermissionSetAttribute(SecurityAction.Demand, Name = "FullTrust")]
public sealed class NavigationTermSetView : FreezableObject

Comentários

O objeto SPWeb , provedor de mapa de site e a diretiva para aparar nós filhos são todos exemplos de informações contextuais que o objeto NavigationTermSetView pode conter.

A classe NavigationTermSetView representa informações contextuais que é usado durante a renderização de um conjunto de termos de navegação, mas que não é armazenado na TermStore ou em cache, o cache de navegação de taxonomia. Portanto, a classe NavigationTermSetView não é considerada parte do conjunto de termos. No entanto, essa informação contextual afeta o comportamento do objeto de NavigationTerm e NavigationTermSet de objeto, semelhante a como a aparência de um objeto físico poderão mudar quando exibidas de diferentes ângulos.

A propriedade View é um membro da classe NavigationTermSet e a classe de NavigationTerm e transportada junto ao percorrer a hierarquia. Por exemplo, após chamar o método GetWithNewView , o objeto retornado será o modo e também todos os outros objetos obtidos de membros como as propriedades Parent e TermSet .

A propriedade View é somente leitura e fixa para uma instância do objeto especificado. Portanto, as operações de alteração de modo de exibição sempre retornará uma nova instância do objeto de NavigationTerm ou NavigationTermSet . Retornar o objeto NavigationTerm ou o NavigationTermSet facilita otimizações de desempenho internas que requerem objetos imutáveis.

É possível que um objeto de SPWeb seja configurado para herdar sua navegação conjunto de termos do pai SPWeb (especificado usando o valor de InheritFromParentWeb ). Nessa situação, o objeto de NavigationTermSetView do objeto pai SPWeb também é usado para o objeto de SPWeb filho. Em outras palavras, a propriedade WebId reflete o objeto SPWeb em que o conjunto de termos foi configurado, em vez do objeto SPWeb que está herdando a navegação.

Exemplos

O exemplo a seguir cria um novo conjunto de termos e permite a navegação gerenciada para um objeto SPWeb com /web1 como a URL.

static void ConfigureNavigation(SPWeb web)
{
     // Create the taxonomy term set.
     TaxonomySession taxonomySession = new TaxonomySession(web.Site);
     TermStore termStore = taxonomySession.DefaultSiteCollectionTermStore;
     Group group = termStore.GetSiteCollectionGroup(web.Site);
     TermSet termSet = group.CreateTermSet("Navigation Term Set");

     // Create a view of the term set as it will look after the web has
     // been configured to use it.
     NavigationTermSet navTermSet = NavigationTermSet.GetAsResolvedByWeb(termSet, web,"GlobalNavigationTaxonomyProvider");

     // Set up the navigation-specific properties.
     NavigationTerm navTerm = navTermSet.CreateTerm("My Article", NavigationLinkType.FriendlyUrl);
     navTerm.TargetUrl.Value = "~site/Pages/Article.aspx";
     navTerm.ExcludeFromGlobalNavigation = true;

     // Output      //"/web1/Pages/Article.aspx?TermStoreId=...&TermSetId=...&TermId=...
     Debug.WriteLine(navTerm.GetResolvedTargetUrl(null, null));
     termStore.CommitAll();

     //Show how the term set will look when trimming is turned on.
     NavigationTermSetView newView = navTermSet.View.GetCopy();
     newView.ExcludeTermsByProvider = true;
     NavigationTermSet trimmedTermSet = navTermSet.GetWithNewView(newView);

     //Output: Terms with trimming = 0
     Debug.WriteLine("Terms with trimming = " + trimmedTermSet.Terms.Count);
     //Output: Terms without trimming = 1
     Debug.WriteLine("Terms without trimming = " + navTermSet.Terms.Count);

     // Finally, configure the web site to use the
     // term set above for its navigation
     WebNavigationSettings settings = new WebNavigationSettings(web);
     settings.GlobalNavigation.Source = StandardNavigationSource.TaxonomyProvider;
     settings.GlobalNavigation.TermStoreId = navTermSet.TermStoreId;
     settings.GlobalNavigation.TermSetId = navTermSet.Id;
settings.Update(taxonomySession);
}

Segurança de thread

Os membros públicos estática (Shared no Visual Basic) desse tipo são seguros para thread. Nenhum membro de instância pode ser garantido como seguro para thread.

Ver também

Referência

NavigationTermSetView membros

Microsoft.SharePoint.Publishing.Navigation namespace