Freigeben über


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.

Siehe auch

Referenz

NavigationTermSetView-Member

Microsoft.SharePoint.Publishing.Navigation-Namespace