NavigationTermSetView-Klasse
Kontextinformationen, die betrifft die Berechnung bestimmter Eigenschaften für die NavigationTerm -Objekte in einem NavigationTermSet -Objekt darstellt.
Vererbungshierarchie
System.Object
Microsoft.SharePoint.Publishing.FreezableObject
Microsoft.SharePoint.Publishing.Navigation.NavigationTermSetView
Namespace: Microsoft.SharePoint.Publishing.Navigation
Assembly: Microsoft.SharePoint.Publishing (in Microsoft.SharePoint.Publishing.dll)
Syntax
'Declaration
<PermissionSetAttribute(SecurityAction.Demand, Name := "FullTrust")> _
Public NotInheritable Class NavigationTermSetView _
Inherits FreezableObject
'Usage
Dim instance As NavigationTermSetView
[PermissionSetAttribute(SecurityAction.Demand, Name = "FullTrust")]
public sealed class NavigationTermSetView : FreezableObject
Hinweise
SPWeb -Objekt, Siteübersichtsanbieter und Richtlinien zum Beschneiden von untergeordneten Knoten sind Beispiele für Kontextinformationen, die das NavigationTermSetView -Objekt enthalten kann.
Die NavigationTermSetView -Klasse stellt Kontextinformationen, die beim Rendern eines Ausdruckssatzes Navigation verwendet wird, aber die ist nicht in der TermStore gespeichert oder von der Taxonomie Navigation-Cache zwischengespeichert. Daher ist die NavigationTermSetView -Klasse nicht als Teil der Ausdruckssatz sein. Diese Kontextinformationen beeinflusst jedoch das Verhalten des NavigationTerm und NavigationTermSet -Objekts, ähnlich wie ein physisches Objekt Darstellung ändern kann aus verschiedenen Winkeln betrachtet.
Die View -Eigenschaft ist ein Mitglied der NavigationTermSet -Klasse und der NavigationTerm -Klasse, und beim Durchlaufen der Hierarchie erfolgt ist. Z. B. nach einem Aufruf der GetWithNewView -Methode wird zurückgegebene Objekt der Ansicht, und so werden andere Objekte, die von Membern, z. B. die Parent -Eigenschaft und die TermSet -Eigenschaft abgerufen.
Die View -Eigenschaft ist schreibgeschützt und für eine Instanz des angegebenen Objekts fest. Daher geben Operationen Ansicht ändern immer eine neue Instanz des Objekts NavigationTerm oder NavigationTermSet -Objekt zurück. Rückgabe der NavigationTerm oder das NavigationTermSet -Objekt ermöglicht internen Leistungsoptimierungen, die unveränderliche Objekte erfordern.
Es ist möglich, dass ein SPWeb Objekt erben ihre Navigation Ausdruckssatz aus der übergeordneten SPWeb (mithilfe des InheritFromParentWeb -Werts angegeben) konfiguriert werden. In diesem Fall wird das NavigationTermSetView -Objekt des übergeordneten Objekts SPWeb auch für das untergeordnete SPWeb Objekt verwendet. Mit anderen Worten, entspricht die WebId -Eigenschaft das SPWeb -Objekt, in dem der Ausdruckssatz konfiguriert wurde, anstelle des SPWeb -Objekts, die die Navigation erbt.
Beispiele
Das folgende Beispiel erstellt einen neuen Ausdruckssatz und ermöglicht von verwalteten Navigation für ein SPWeb -Objekt mit /web1 als 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);
}
Threadsicherheit
Alle öffentlichen static (Shared in Visual Basic) Member dieses Typs sind threadsicher. Die Threadsicherheit von Instanzmembern ist nicht gewährleistet.