NavigationTermSetItem.GetAsEditable método
Retorna uma versão editável deste objeto NavigationTerm ou NavigationTermSet .
Namespace: Microsoft.SharePoint.Publishing.Navigation
Assembly: Microsoft.SharePoint.Publishing (em Microsoft.SharePoint.Publishing.dll)
Sintaxe
'Declaração
Public Function GetAsEditable ( _
taxonomySession As TaxonomySession _
) As NavigationTermSetItem
'Uso
Dim instance As NavigationTermSetItem
Dim taxonomySession As TaxonomySession
Dim returnValue As NavigationTermSetItem
returnValue = instance.GetAsEditable(taxonomySession)
public NavigationTermSetItem GetAsEditable(
TaxonomySession taxonomySession
)
Parâmetros
taxonomySession
Tipo: Microsoft.SharePoint.Taxonomy.TaxonomySessionO objeto TaxonomySession para o qual deseja obter um objeto Term ou TermSet como editável.
Valor retornado
Tipo: Microsoft.SharePoint.Publishing.Navigation.NavigationTermSetItem
Uma versão editável do objeto NavigationTerm ou uma versão editável do objeto NavigationTermSet
Comentários
Os objetos NavigationTerm e NavigationTermSet têm dois modos que refletem os padrões mais comuns de uso. No modo de "editável", o objeto atua como um wrapper para o objeto subjacente análogo no namespace N:Microsoft.SharePoint.Taxonomy e o objeto pode ser modificado livremente. No modo "somente leitura", o objeto usa uma representação de leve limitada que não faz referência a objetos de um objeto TaxonomySession . O modo "somente leitura" permite um armazenamento eficiente no cache de navegação de taxonomia e oferece suporte a algumas otimizações de passagem que melhoram o desempenho quando essas otimizações são usadas com o objeto TaxonomySiteMapProvider . O modo "somente leitura" é definido pela propriedade IsReadOnly .
O método GetAsEditable(TaxonomySession) é usado quando a propriedade IsReadOnly() é igual a true. Ele retorna uma versão editável deste NavigationTerm objeto ou NavigationTermSet , que atua como um wrapper para o objeto subjacente de Term ou TermSet do objeto de TaxonomySession que é fornecido.
Use o GetAsEditable ao IsReadOnly=true.
Exemplos
Este exemplo mostra como usar o método GetAsEditable para adicionar um novo link para um objeto de NavigationTermSet que foi recuperado do cache.
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);
}
Ver também
Referência
Microsoft.SharePoint.Publishing.Navigation namespace