Creare una lista da un file STP in SharePoint 2007
Un esempio di come creare, in SharePoint 2007 (WSS3 - MOSS), via codice una lista partendo da un template di lista salvato come file STP (tramite il metodo CreateListFromRpc).
Per far questo è necessario avere:
C#
//using System.Collections.Specialized;
//using Microsoft.SharePoint;
NameValueCollection qs = new NameValueCollection();
qs.Add("CustomTemplate", "FileName.stp");
qs.Add("FeatureId", "{C5E8FDF8-6DA1-4cb6-8452-9B029D0AD092}");
qs.Add("ListTemplate", "30054");
qs.Add("Title", "MyDoc");
qs.Add("Description", "");
Uri u = new Uri("javascript:void(0)");
SPList list = web.Lists.CreateListFromRpc(qs, out u);
list.Title = "My Document Library";
list.Update();
- Il nome del file stp (i file stp si trovano in /_catalogs/lt/Forms/AllItems.aspx)
- l'ID della feature da cui è stata creata la lista o document library (FeatureId = ListTemplate/Details/FeatureId)
- L'ID assegnato al template di lista(ListTemplate = ListTemplate/Details/TemplateType)
XML
<?xml version="1.0" encoding="UTF-8" ?>
<ListTemplate WebUrl="http://localhost/miosito">
<Details>
<TemplateDescription></TemplateDescription>
<TemplateTitle>MyTemplateList</TemplateTitle>
<ProductVersion>3</ProductVersion>
<Language>1033</Language>
<TemplateID>1</TemplateID>
<Configuration>1</Configuration>
<FeatureId>{C5E8FDF8-6DA1-4cb6-8452-9B029D0AD092}</FeatureId>
<TemplateType>30054</TemplateType>
<BaseType>1</BaseType>
</Details>
...
</ListTemplate>