将SPList从一个站点复制到另一个站点

时间:2013-11-25 11:01:38

标签: c# xml sharepoint-2010 migration

对于SP2010迁移工具,我编写了两种方法:一种用于将网站集导出到xml文件,另一种用于将xml结构导入网站集。

除了我无法使列表迁移正常工作之外,一切正常。我只需要复制没有它内容的列表,但是需要使用什么模板以及它是否显示在快速启动栏中等属性。

这里我将每个列表的数据存储在xml文件中

foreach (SPList list in rootsite.Lists)
{
     //Store relevant data about each list in xml node
     XmlElement nodelist = document.CreateElement(strList);
     nodelist.SetAttribute(strTitle, list.Title);
     nodelist.SetAttribute(strDescription, list.Description);
     nodelist.SetAttribute(strTemplate, "value for list template goes here");
}

在这里我将xml转换为SPList:

XmlElement rootnode = document.DocumentElement; //Get root node of document (SPSite)
XmlNodeList listsnode = rootnode.ChildNodes[0].SelectNodes(strList); //Get all lists from "Lists" node of xml file

if (listsnode.Count > 0) 
{
     foreach(XmlNode node in listsnode)
     {
           //Store data about list in strings and create the list afterward
           string strListTitle = node.Attributes[strTitle].Value;
           string strListDescription = node.Attributes[strDescription].Value;
           string strListTemplate = //how to get data into SPListTemplate here?

           site.RootWeb.Lists.Add(strListTitle, strListDescription, strListTemplate);
     }
}

所以我基本上不知道如何处理这个问题,如果我应该使用SPListTemplate或SPListTemplateType。

0 个答案:

没有答案