Я удивлен, что ответ Йохана Лейно помечен как полезный несколько раз, поскольку он не работает в данном конкретном случае. Если вы создадите шаблон самостоятельно, web.ListTemplates
не сохранит его, и вы не сможете создать список. Это работает только для готовых шаблонов.
Если вы хотите создать список на основе вашего собственного шаблона, вам нужно сделать это следующим образом:
SPListTemplateCollection listTemplates = web.Site.GetCustomListTemplates(web);
SPListTemplate listTemplate = listTemplates["MyCustomTemplate"];
Guid listId = web.Lists.Add("My New List Name", "My Description", listTemplate);
if (listId != null) { //all good }