使用元数据创建新 Wiki

Create new Wiki with Metadata

我正在尝试使用 C# 中的客户端库创建新的企业 Wiki。我在添加类别时遇到了一些问题。在网页上,我可以创建 WikiPage 并轻松添加我们的自定义类别。但它不适用于 C#。 这是我的代码:

        for(int i = 0; i < SourceItemCol.Count; i++)
        {
            SP.ListItem sourceItem = SourceItemCol[i];
            string pageName = sourceItem["FileLeafRef"].ToString();
            //samotne pridani wikiPage na wikinu
            SP.File item = targetList.RootFolder.Files.AddTemplateFile(@"/Stranky%20wikiwebu/" + pageName/*+".aspx"*/, SP.TemplateFileType.WikiPage);
            SP.ListItem newItem = item.ListItemAllFields;

            newItem["WikiField"] = prepisTelo(sourceItem["WikiField"].ToString());
            newItem["Wiki_x0020_Page_x0020_Categories"] = sourceItem["Categories_x0020_Wiki"];
            newItem.Update();

            targetList.Update();

        }
        targetContext.ExecuteQuery();
        targetContext.Dispose();

问题是,我在 Sharepoint Wiki 上获得了新的 WikiPage,正文正确,但类别消失了。所以我问,这里有人有这方面的经验吗?谢谢你的回答。

P.S。整个想法是将旧公司 WikiPages 迁移到使用 Enterprise Wiki 的新 Sharepoint 服务器上。

好吧,我解决了这个问题。我正在复制错误的 FieldValues

newItem["e1a5b98cdd71426dacb6e478c7a5882f"] = sourceItem.FieldValues["c24e0d7655d94d68baa9cb82e45ea847"];

工作顺利。