Поделиться через


Класс TermStore

Представляет хранилище, содержащий метаданные внутри Group дочерние объекты, объекты TermSet и Term объекты.

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

System.Object
  Microsoft.SharePoint.Taxonomy.TermStore

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

Синтаксис

'Декларация
<SharePointPermissionAttribute(SecurityAction.LinkDemand, ObjectModel := True)> _
Public NotInheritable Class TermStore
'Применение
Dim instance As TermStore
[SharePointPermissionAttribute(SecurityAction.LinkDemand, ObjectModel = true)]
public sealed class TermStore

Замечания

TermStore содержит ноль или более группы объектов, которые используются для организации слов в наборы терминов. Доступ к группам через свойство Groups .

Класс банка терминов также предоставляет методы для создания новых дочерних объектов группы, получение и задание разрешений администратора банка терминов в банке терминов и проверки разрешений. Кроме того он предоставляет свойства, используемые для получения и установки значения объекта банка терминов, например набор рабочих языков и доступа ключевое слово и термин потерянные объекты TermSet .

Используйте методы класса банка терминов, например GetTerms(String, Boolean) и GetTermSets(String, Int32) для поиска и получения всех дочерних групп объектов TermSet и Term

Наконец, TermStore предоставляет метод CommitAll() и метод RollbackAll() , чтобы зафиксировать или откатить изменения в базу данных эти методы являются единственным способом для сохранения изменений в базе данных при обновлении дочерних объектов, таких как Group, TermSetи Term.

Примеры

В следующем примере показано создание образец набора терминов.

using System;
using Microsoft.SharePoint;
using Microsoft.SharePoint.Taxonomy;
using Microsoft.SharePoint.Publishing.Navigation;

namespace NavigationDemos
{
    public class Class1
    {
        public static readonly Guid NavTermSetId = new Guid("<GUID>");
        public static readonly Guid TaggingTermSetId = new Guid("<GUID>");

        //Creates the sample term set. If it exists, it will be deleted
        public static NavigationTermSet RecreateSampleNavTermSet(TaxonomySession taxonomySession, SPWeb web)
        {
            // Use the first TermStore in the list
            if (taxonomySession.TermStores.Count == 0)
                throw new InvalidOperationException("The Taxonomy Service is offline or missing");

            TermStore termStore = taxonomySession.TermStores[0];

            // Does the TermSet already exist?
            TermSet existingTermSet = termStore.GetTermSet(NavTermSetId);

            if (existingTermSet != null)
            {
                //If the TermSet exists, delete it.
                existingTermSet.Delete();
                termStore.CommitAll();
            }

            // Create a new TermSet
            Group siteCollectionGroup = termStore.GetSiteCollectionGroup(web.Site);
            TermSet termSet = siteCollectionGroup.CreateTermSet("Navigation Demo", NavTermSetId);
            NavigationTermSet navTermSet = NavigationTermSet.GetAsResolvedByWeb(termSet, web,
                StandardNavigationProviderNames.GlobalNavigationTaxonomyProvider);
            navTermSet.IsNavigationTermSet = true;
            navTermSet.TargetUrlForChildTerms.Value = "~site/Pages/Topics/Topic.aspx";
            NavigationTerm term1 = navTermSet.CreateTerm("Term 1", NavigationLinkType.SimpleLink);
            term1.SimpleLinkUrl = "https://www.bing.com/";
            NavigationTerm term2 = navTermSet.CreateTerm("Term 2", NavigationLinkType.FriendlyUrl);
            NavigationTerm term2a = term2.CreateTerm("Term 2 A", NavigationLinkType.FriendlyUrl);
            NavigationTerm term2b = term2.CreateTerm("Term 2 B", NavigationLinkType.FriendlyUrl);
            NavigationTerm term3 = navTermSet.CreateTerm("Term 3", NavigationLinkType.FriendlyUrl);
            termStore.CommitAll();
            return navTermSet;
        }
    }
}

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

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

См. также

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

Элементы TermStore

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