使用 CSOM 使用 .stp 模板创建列表



我想使用上传到列表模板Gallary的.stp文件创建列表。

-

-> 我正在使用控制台应用程序在在线站点中创建列表。-->知道如何从在线站点的STP文件添加列表。

我没有使用以下代码获得自定义列表。

listTemplate = Context.Web.ListTemplates.First(t => t.ListTemplateTypeKind == TemplateID);

我应该如何在上下文中获取 .stp 列表模板?

First 只是一个用于获取第一项的 LINQ 查询。

我假设您使用的是客户端 OM?您是否明确请求了 Context.Web.ListTemplates(如:您是否请求了 ClientContext.Load(ListTemplates))?否则将不可用。

试试这个:

 var site = context.Web;
 context.Load(site,s => s.ListTemplates );
 context.ExecuteQuery();
 var listCreationInfo = new ListCreationInformation
 {
       Title = "<Your Title>",
       Description = "<Your Description>"
 };
 var listTemplate = site.ListTemplates.First(lt => lt.Name == "<Your Template Name>");
 listCreationInfo.TemplateFeatureId = listTemplate.FeatureId;
 listCreationInfo.TemplateType = listTemplate.ListTemplateTypeKind;
 site.Lists.Add(listCreationInfo);
 context.ExecuteQuery();

最新更新