我正在尝试根据我保存的模板创建一个列表 . 下面的代码应该得到名称为"ContactList"的列表,但我总是得到一个错误,即该名称的列表不存在 . (也尝试过功能ID)
var listTemplate = site.ListTemplates.First(lt => lt.Name == "ContactList");
如果我循环遍历所有列表模板,我只会返回“标准”模板 . 如果我按“添加应用程序”,我可以看到我的模板列表在那里,我可以添加它 .
clientContext.Load(site, s => s.ListTemplates);
foreach (var s in site.ListTemplates)
如何按代码添加基于现有模板的列表?或者甚至可以这样做?我只能添加一个标准的“自定义列表”
整码:
var site = clientContext.Web;
clientContext.Load(site, s => s.ListTemplates);
clientContext.ExecuteQuery();
var listCreationInfo = new ListCreationInformation
{
Title = "ContactTest",
Description = "ContactTest",
};
var listTemplate = site.ListTemplates.First(lt => lt.Name == "ContactList");
listCreationInfo.TemplateFeatureId = listTemplate.FeatureId;
listCreationInfo.TemplateType = listTemplate.ListTemplateTypeKind;
site.Lists.Add(listCreationInfo);
clientContext.ExecuteQuery();