Использование SPListCollection.Add
Кто- нибудь может сказать мне, как использовать метод SPListCollection.Add(String, String, String, String, Int32, String, String, SPFeatureDefinition, SPListTemplate.QuickLaunchOptions)?
- Какова цель параметра featureId?
- Какова цель параметра listInstanceFeatureDefinition?
- Какие параметры являются необязательными / обязательными?
- Каков формат параметра url?
Заранее спасибо!
2 ответа
Продолжайте сталкиваться с той же ссылкой codeplex... не очень полезной для этой конкретной реализации метода. После некоторых проб и ошибок я все заработал, и он обошел ошибку "Недопустимый шаблон списка" при попытке создать списки из пользовательского типа содержимого (например, BaseTemplate > 100000). Функция берет определение SPList (ListToCopy) из одного SPWeb и копирует его в другой SPWeb (NewWeb). На данный момент единственной отсутствующей ссылкой является последний параметр, docTemplateType, который я был вынужден указать вручную (101 - MS Word). Не уверен, как получить это из списка источников.
public static Guid CopyListDefToAWeb(String SourceWebUrl, SPList ListToCopy, SPWeb NewWeb)
{
Guid newListGuid = Guid.Empty;
if (Convert.ToInt32(ListToCopy.BaseTemplate) < 10000)
{
newListGuid = NewWeb.Lists.Add(ListToCopy.Title, ListToCopy.Description, ListToCopy.BaseTemplate);
}
else
{
String newListUrl = ListToCopy.Title.Replace(" ", String.Empty);
newListGuid = NewWeb.Lists.Add(ListToCopy.Title, ListToCopy.Description, newListUrl, ListToCopy.TemplateFeatureId.ToString(), Convert.ToInt32(ListToCopy.BaseTemplate), "101");
}
return newListGuid;
}
В то время как ссылка, которую вы дали для MSDN, четко объясняет каждый параметр, вот несколько примеров того, как вы можете использовать его
http://spcore.codeplex.com/SourceControl/changeset/view/62542