首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Sharepoint平台列表同步

Sharepoint平台列表同步
EN

Stack Overflow用户
提问于 2015-12-18 01:11:20
回答 2查看 85关注 0票数 0

是否可以使用某种Visual Studio来同步位于不同平台上的两个SharePoint列表?我是个新手,想分析一下我的跨平台同步列表选项。我希望能够添加或更新列表2中的项目,如果它们不存在于列表1中,或者删除它们,如果它们不再存在于List1中

例如: List1基于SharePoint 2013平台,List2基于SharePoint2010平台

EN

回答 2

Stack Overflow用户

发布于 2015-12-18 01:28:05

Microsoft.SharePoint.Client是一个可以远程连接到SharePoint环境的库。因此,您可以很容易地连接到一个列表,收集数据,然后打开到另一个环境的新上下文,并复制该数据。

代码语言:javascript
复制
string url = first.site;
string url2 = second.site;
using (ClientContext context = new ClientContext(url))
{
    //GetListItems();
    using (ClientContext context2 = new ClientContext(url2))
    {
         //AddListItems();
    }
}

代码语言:javascript
复制
        using (ClientContext context = new ClientContext(url))
        {
            List list = context.Web.Lists.GetByTitle("Project Notes Test");
            FieldCollection fields = list.Fields;
            context.Load(fields);
            context.ExecuteQuery();

            using (ClientContext target = new ClientContext(url2))
            {
                List list2 = target.Web.Lists.GetByTitle("Other List");
                FieldCollection fields2 = list2.Fields;
                target.Load(fields2);
                target.ExecuteQuery();
                foreach (Field field in fields)
                {
                   foreach(Field field2 in fields2)
                   {
                       if(field.Title == field2.Title)
                       {
                           listItem1[field.StaticName] = listItem2[field.StaticName];
                       }
                   }
                }
            }
        }
票数 0
EN

Stack Overflow用户

发布于 2015-12-18 05:13:32

如何确保第二个列表在适当的列中获取信息?我必须指定列表中的每一列吗?例如: collListItem"Title“= oListItem"Title”

代码语言:javascript
复制
string url = first.site;
string url2 = second.site;
using (ClientContext context = new ClientContext(url))
{
    //Retreival code here;
    foreach(ListItem listItem in collListItem)
    {
      using (ClientContext context2 = new ClientContext(url2))
      {
         //Add Items to list;
        
          SP.List rList = clientContext.Web.Lists.GetByTitle("List2");
          ListItemCreationInformation itemCreateInfo = new  ListItemCreationInformation();
          ListItem oListItem = rList.AddItem(itemCreateInfo);
        //******How do I ensure this is getting the code I retrieved in the first list?//
          oListItem["Title"] = "Hello";
          oListItem["Body"] = "New Item";

          oListItem.Update();

          clientContext.ExecuteQuery();
      }
    }
}

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34340420

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档