Pregunta

He creado un grupo de metadatos administrados llamado "MyGroup" en Term Store (servicio de metadatos administrados) programáticamente bajo el método en SharePoint 2013 como se muestra a continuación:

     public override void FeatureActivated(SPFeatureReceiverProperties properties)
        {

        Guid fieldID1 = new Guid("{e7344bac-ce09-4254-96eb-387aa0635bd4}");
        SPSite site = properties.Feature.Parent as SPSite;
        TaxonomySession session = new TaxonomySession(site);
        var termStore = session.TermStores["Managed Metadata Service"]; 

            var group = termStore.CreateGroup("MyGroup");
            SPField field1 = site.RootWeb.Fields[fieldID1];
            var termSet1 = group.CreateTermSet(field1.InternalName);
    // Connect to MMS
  TaxonomyField taxonomyField1 = site.RootWeb.Fields[fieldID1] as TaxonomyField;
     taxonomyField1.SspId = termSet1.TermStore.Id;
                            taxonomyField1.TermSetId = termSet1.Id;
                            taxonomyField1.TargetTemplate = string.Empty;
                            taxonomyField1.AnchorId = Guid.Empty;
                            taxonomyField1.Update();
        }

Código ejecutado con éxito, pero no veo "MyGroup" en el sitio settings->Term store management.¿Por qué no está allí?

¿Fue útil?

Solución

Creo que le estás perdiendo el Commitall () después de realizar los cambios en el TermStore.

...
var termSet1 = group.CreateTermSet(field1.InternalName);
termStore.CommitAll();
...

http://msdn.microsoft.COM / EN-EEUU / Library / Microsoft.SharePoint.taxonomy.termstore.commitall.aspx

Licenciado bajo: CC-BY-SA con atribución
scroll top