Clase NavigationTermSet
Especifica el comportamiento de navegación y las propiedades de un objeto TermSet que se utiliza para controlar la navegación y direcciones URL descriptivas de un sitio Web.
Jerarquía de la herencia
System.Object
Microsoft.SharePoint.Publishing.Navigation.NavigationTermSetItem
Microsoft.SharePoint.Publishing.Navigation.NavigationTermSet
Espacio de nombres: Microsoft.SharePoint.Publishing.Navigation
Ensamblado: Microsoft.SharePoint.Publishing (en Microsoft.SharePoint.Publishing.dll)
Sintaxis
'Declaración
<PermissionSetAttribute(SecurityAction.Demand, Name := "FullTrust")> _
Public MustInherit Class NavigationTermSet _
Inherits NavigationTermSetItem
'Uso
Dim instance As NavigationTermSet
[PermissionSetAttribute(SecurityAction.Demand, Name = "FullTrust")]
public abstract class NavigationTermSet : NavigationTermSetItem
Comentarios
Esta clase agrega propiedades adicionales y las operaciones que son específicas de navegación administrado.
El objeto NavigationTermSet tiene dos modos: un modo editable que actúa como contenedor de un objeto TermSet ligero y un modo optimizado de sólo lectura que se utiliza para reducir el tamaño de la memoria de los objetos NavigationTermSet almacenada en la caché de navegación de la taxonomía.
Utilice el método GetAsResolvedByWeb para construir una instancia editable. Utilice los métodos TaxonomyNavigation para obtener instancias de sólo lectura de la caché de navegación de la taxonomía.
Nota
La clase NavigationTermSet admite varias vistas mediante el método GetWithNewView .
Consulte NavigationTermSetView para obtener más información.
Ejemplos
En el ejemplo siguiente se muestra cómo crear un conjunto de términos.
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>");
public const string ServerUrl = "http:// <ServerURL>";
public void CreateNavigationTermSet()
{
using (SPSite site = new SPSite(ServerUrl))
{
using (SPWeb web = site.OpenWeb())
{
TaxonomySession taxonomySession = new TaxonomySession(site, updateCache: true);
// 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)
{
existingTermSet.Delete();
termStore.CommitAll();
}
// Create a new TermSet
Group siteCollectionGroup = termStore.GetSiteCollectionGroup(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/";
Guid term2Guid = new Guid("87FAA433-4E3E-4500-AA5B-E04330B12ACD");
NavigationTerm term2 = navTermSet.CreateTerm("Term 2", NavigationLinkType.FriendlyUrl,
term2Guid);
// Verify that the NavigationTermSetView is being applied correctly
string expectedTargetUrl = web.ServerRelativeUrl
+ "/Pages/Topics/Topic.aspx?TermStoreId=" + termStore.Id.ToString()
+ "&TermSetId=" + NavTermSetId.ToString()
+ "&TermId=" + term2Guid.ToString();
NavigationTerm childTerm = term2.CreateTerm("Term 2 child", NavigationLinkType.FriendlyUrl);
// Commit the Taxonomy changes
childTerm.GetTaxonomyTerm().TermStore.CommitAll();
}
}
}
}
}
Seguridad para subprocesos
Los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para subprocesos. No se garantiza que los miembros de instancias sean seguros para los subprocesos.
Vea también
Referencia
Espacio de nombres Microsoft.SharePoint.Publishing.Navigation