Freigeben über


NavigationTermSetItem.GetAsEditable-Methode

Gibt eine bearbeitbare Version dieses NavigationTerm -Objekt oder ein NavigationTermSet -Objekt zurück.

Namespace:  Microsoft.SharePoint.Publishing.Navigation
Assembly:  Microsoft.SharePoint.Publishing (in Microsoft.SharePoint.Publishing.dll)

Syntax

'Declaration
Public Function GetAsEditable ( _
    taxonomySession As TaxonomySession _
) As NavigationTermSetItem
'Usage
Dim instance As NavigationTermSetItem
Dim taxonomySession As TaxonomySession
Dim returnValue As NavigationTermSetItem

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

Parameter

Rückgabewert

Typ: Microsoft.SharePoint.Publishing.Navigation.NavigationTermSetItem
Eine bearbeitbare Version des NavigationTerm -Objekts oder eine bearbeitbare Version des NavigationTermSet -Objekts

Hinweise

Die NavigationTerm und NavigationTermSet -Objekte haben zwei Modi, die die am häufigsten verwendeten Verwendungsmuster widerspiegeln. Im Modus "bearbeitbar" das Objekt fungiert als Wrapper für das zugrunde liegende Analog-Objekt im N:Microsoft.SharePoint.Taxonomy-Namespace, und das Objekt frei geändert werden kann. Im Modus "schreibgeschützt" verwendet das Objekt eine begrenzte einfache Darstellung, die nicht Objekte aus einem TaxonomySession -Objekt verweist. Der Modus "schreibgeschützt" ermöglicht die effiziente Speicherung im Cache Taxonomie Navigation und unterstützt einige Traversal-Optimierungen, die Performance verbessern, wenn diese Optimierungen mit dem TaxonomySiteMapProvider -Objekt verwendet werden. Der Modus "schreibgeschützt" ist von der IsReadOnly -Eigenschaft festgelegt.

Die GetAsEditable(TaxonomySession) -Methode wird verwendet, wenn die IsReadOnly() -Eigenschaft trueentspricht. Es gibt eine bearbeitbare Version dieses NavigationTerm -Objekt oder ein NavigationTermSet -Objekt, das fungiert als Wrapper für das zugrunde liegende Objekt für Term oder TermSet aus dem TaxonomySession -Objekt, das bereitgestellt wird.

Verwenden Sie die GetAsEditable beim IsReadOnly=true.

Beispiele

In diesem Beispiel wird veranschaulicht, wie Sie die GetAsEditable -Methode verwenden, um ein NavigationTermSet -Objekt einen neuen Link hinzufügen, die aus dem Cache abgerufen wurde.

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);
            }

Siehe auch

Referenz

NavigationTermSetItem Klasse

NavigationTermSetItem-Member

Microsoft.SharePoint.Publishing.Navigation-Namespace

Microsoft.SharePoint.Taxonomy.Term

Microsoft.SharePoint.Taxonomy.TermSet