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


Метод NavigationTermSetItem.GetAsEditable

Возвращает редактируемая версия этого объекта NavigationTerm или NavigationTermSet .

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

Синтаксис

'Декларация
Public Function GetAsEditable ( _
    taxonomySession As TaxonomySession _
) As NavigationTermSetItem
'Применение
Dim instance As NavigationTermSetItem
Dim taxonomySession As TaxonomySession
Dim returnValue As NavigationTermSetItem

returnValue = instance.GetAsEditable(taxonomySession)
public NavigationTermSetItem GetAsEditable(
    TaxonomySession taxonomySession
)

Параметры

Возвращаемое значение

Тип: Microsoft.SharePoint.Publishing.Navigation.NavigationTermSetItem
Редактируемая версия объекта NavigationTerm или редактируемую копию объекта NavigationTermSet

Замечания

NavigationTerm и NavigationTermSet объекты имеют два режима, отражающие наиболее общим принципам использования. В режиме «редактировать» объект действует как оболочка для базового аналогичного объекта в пространстве имен N:Microsoft.SharePoint.Taxonomy и свободно изменения объекта. В режиме «только чтение» объект использует ограниченный упрощенных представление, которое не ссылаться на объекты из объекта TaxonomySession . Режим «только чтение» позволяет эффективного хранения в кэше таксономии навигация и поддерживает некоторые оптимизации обхода для улучшения производительности при использовании этих оптимизаций с объектом TaxonomySiteMapProvider . Режим «только чтение» задается свойством IsReadOnly .

Метод GetAsEditable(TaxonomySession) используется, когда свойство IsReadOnly() равно true. Возвращает доступную для редактирования версию этого объекта NavigationTerm или объект NavigationTermSet , который действует как оболочка для базового объекта Term или TermSet из объекта TaxonomySession , который предоставляется.

Использование GetAsEditable при IsReadOnly=true.

Примеры

В этом примере показано, как использовать метод GetAsEditable , чтобы добавить новую ссылку на объект NavigationTermSet , который был извлечен из кэша.

static void CreateSimpleLink(SPWeb web)
            {
                // Retrieve the active NavigationTermSet object from the taxonomy navigation cache.
                NavigationTermSet readOnlyTermSet = TaxonomyNavigation.GetTermSetForWeb(web,
                    "GlobalNavigationTaxonomyProvider", includeInheritedSettings: false);
            
                // This operation would fail because readOnlyTermSet.IsReadOnly=true:
                //readOnlyTermSet.CreateTerm("Search The Web", NavigationLinkType.SimpleLink);
            
                // Get an editable version of the object.
                TaxonomySession taxonomySession = new TaxonomySession(web, updateCache: true);
                NavigationTermSet editableTermSet = readOnlyTermSet.GetAsEditable(taxonomySession);
            
                // Configure the Taxonomy working language.
                TermStore termStore = editableTermSet.GetTaxonomyTermStore();
                termStore.WorkingLanguage = TaxonomyNavigation.GetNavigationLcidForWeb(web);
            
                // Create the link by using the editable version of the object.
                NavigationTerm editableTerm = editableTermSet.CreateTerm("Search The Web", NavigationLinkType.SimpleLink);
                editableTerm.TargetUrl.Value = "https://www.bing.com/";
            
                // Commit the changes to the taxonomy service.
                termStore.CommitAll();
                
                // Cause the cache to be updated immediately.  Without this, it may 
                // take 5-10 seconds before this change is reflected in subsequent
                // calls to GetTermSetForWeb().
                TaxonomyNavigation.FlushTermSetFromCache(web, editableTermSet);
            }

См. также

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

NavigationTermSetItem класс

Элементы NavigationTermSetItem

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

Microsoft.SharePoint.Taxonomy.Term

Microsoft.SharePoint.Taxonomy.TermSet