1

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 を与えてくれます。私はそれをチェック!

どうもありがとう!

4

1 に答える 1

0

追加する必要があります

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

そしてそれはうまくいきます!

于 2014-03-19T14:07:23.093 に答える