Класс NavigationTermSetView

Предоставляет контекстную информацию, которая влияет на расчет определенные свойства для объектов NavigationTerm в объект NavigationTermSet .

Иерархия наследования

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

Пространство имен:  Microsoft.SharePoint.Publishing.Navigation
Сборка:  Microsoft.SharePoint.Publishing (в Microsoft.SharePoint.Publishing.dll)

Синтаксис

'Декларация
<PermissionSetAttribute(SecurityAction.Demand, Name := "FullTrust")> _
Public NotInheritable Class NavigationTermSetView _
    Inherits FreezableObject
'Применение
Dim instance As NavigationTermSetView
[PermissionSetAttribute(SecurityAction.Demand, Name = "FullTrust")]
public sealed class NavigationTermSetView : FreezableObject

Замечания

Объект SPWeb , поставщик карты узла и политики для обрезки дочерние узлы являются примерами контекстные сведения, которые могут храниться в объекте NavigationTermSetView .

Класс NavigationTermSetView представляет контекстные сведения, используемые при отображении переходов набор терминов, но который не хранится в TermStore или таксономии Навигация кэша в кэше. Таким образом класс NavigationTermSetView не является частью набора терминов. Тем не менее эти сведения влияет на поведение объекта NavigationTerm и NavigationTermSet объекта, примерно как внешний физический объект могут изменяться при просмотре с разных углов.

Свойство View является членом класса NavigationTermSet и класса NavigationTerm и переносится вместе во время обхода иерархии. Например после вызова метода GetWithNewView , возвращаемый объект будет иметь представление и поэтому будут другие объекты, полученные из членов, например свойства Parent и TermSet .

Свойство View является основным для заданного экземпляра объекта и только для чтения. Таким образом операции изменения представления всегда возвращают новый экземпляр объекта NavigationTerm или NavigationTermSet объекта. Возвращает объект NavigationTerm или NavigationTermSet объекта способствует оптимизации внутренней производительности, требующих неизменяемые объекты.

Это возможно для объекта SPWeb настроены для наследования его навигации набор терминов из родительского SPWeb (указывается с помощью значения InheritFromParentWeb ). В этом случае объект NavigationTermSetViewSPWeb родительского объекта также используется для дочернего объекта SPWeb . Другими словами свойство WebId отражает объект SPWeb , где задан набор терминов, вместо объекта SPWeb , который наследование переходов.

Примеры

В приведенном ниже примере создается новый набор терминов и позволяет осуществлять навигацию управляемый объект SPWeb с /web1 как 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);
}

Потокобезопасность

Любые общедоступные элементы static (Shared в Visual Basic) этого типа являются потокобезопасными. Не гарантируется, что любые элементы экземпляров потокобезопасны.

См. также

Справочные материалы

Элементы NavigationTermSetView

Пространство имен Microsoft.SharePoint.Publishing.Navigation