如何使用List.asmx本机Web服务和客户端对象模型将新项目添加到SharePoint列表?

时间:2014-04-29 07:23:41

标签: c# web-services sharepoint-2010 sharepoint-clientobject

我需要使用客户端对象模型 Lists.asmx Web服务将项目添加到SharePoint列表。
怎么能实现这一目标?

另外,当我们只使用客户端对象模型直接将项目添加到SharePoint列表时,我无法理解为什么我们使用 Lists.asmx Web服务。

有人可以通过一个例子来解释我的怀疑吗?

1 个答案:

答案 0 :(得分:1)

using System;
using Microsoft.SharePoint.Client;
using SP = Microsoft.SharePoint.Client;

namespace Microsoft.SDK.SharePointServices.Samples
{
    class CreateListItem
    {
        static void Main()
        {   
            string siteUrl = "http://MyServer/sites/MySiteCollection";

            ClientContext clientContext = new ClientContext(siteUrl);
            SP.List oList = clientContext.Web.Lists.GetByTitle("Announcements");

            ListItemCreationInformation itemCreateInfo = new ListItemCreationInformation();
            ListItem oListItem = oList.AddItem(itemCreateInfo);
            oListItem["Title"] = "My New Item!";
            oListItem["Body"] = "Hello World!";

            oListItem.Update();

            clientContext.ExecuteQuery(); 
        }
    }
}

在某些情况下,何时使用CSOM与服务。

https://sharepoint.stackexchange.com/questions/26093/webservices-or-client-object-model

  

如果可以,您应该使用客户端对象模型(CSOM) - 它不会   支持许多功能作为Web服务,但在一个   方式如:

     

数据类型批处理命令(更有效地使用带宽)   加载数据的优化(更有效地使用带宽)更多   类似于服务器端对象模型的编程(   在大多数情况下,Web服务只是大量未记录的XML   你需要解析)...所以,为了表现你可能会成功   更好地使用CSOM