Добавить столбец управляемых метаданных в список с помощью CSOM

в Sharepoint 2013 я пытаюсь программно добавить столбец управляемых метаданных в список, используя следующий код:

            Field f = list.Fields.AddFieldAsXml("<Field Type='" + columntype + "'   Name='" + columnname + "' DisplayName='" + columnname + "'  ShowField='Term1033' />", true, AddFieldOptions.AddFieldToDefaultView);

            clientContext.Load(f);
            clientContext.ExecuteQuery();

            TaxonomyField taxField = clientContext.CastTo<TaxonomyField>(f);

            taxField.SspId = this.getDefaultTermStoreId();
            taxField.TermSetId = getTermSetIdByName("Instanties");
            taxField.AllowMultipleValues = false;
            taxField.Open = true;

            taxField.TargetTemplate = string.Empty;
            taxField.AnchorId = Guid.Empty;
            taxField.Update();
            list.Update();
            clientContext.ExecuteQuery();

Столбец создается в моем списке как столбец типа управляемых метаданных, но набор терминов, который я хочу, чтобы пользователи выбирали, не заполняется в настройках. У кого-нибудь есть подсказка, чтобы установить TermSet столбца управляемых метаданных?

getDefaultTermStoreId() и getTermSetIdByName(string) дают мне правильный GUID; я это проверил!

большое спасибо!


person Verthosa    schedule 19.03.2014    source источник
comment
Очевидно, это было исправлено добавлением: taxField.TargetTemplate = string.Empty; taxField.AnchorId = Guid.Empty;   -  person Verthosa    schedule 19.03.2014


Ответы (1)


Мы должны добавить

taxField.TargetTemplate = string.Empty; taxField.AnchorId = Guid.Empty;

и тогда это работает!

person Verthosa    schedule 19.03.2014