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.