2-4SharePoint .Net客户端对象模型

没有安装SharePoint得服务器上使用(需要提供 用户名 密码  域)

引入程序集 SharePoint.client 和 SharePoint runtime

 

List操作查询,修改,删除等

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Microsoft.SharePoint.Client;
using System.Net;

namespace democlient
{
    class Program
    {
        static string SITEURL = "http://sp2016:8000/sites/topsite";
        static string LISTURL = "sites/topsite/Lists/ListCode";
        static void Main(string[] args)
        {
            UpdateListItem();
        }
        public static void GetWebTitle()
        {
            ClientContext context = new ClientContext(SITEURL);
            Web web = context.Web;
            context.Load(web);
            context.ExecuteQuery();
            Console.WriteLine(web.Title);
        }

        //查询列表项
        public static void GetListItems()
        {
            ClientContext context = new ClientContext(SITEURL);
            List list = context.Web.GetList(LISTURL);
            CamlQuery query = new CamlQuery();
            query.ViewXml = "";
            ListItemCollection items = list.GetItems(query);
            context.Load(items);
            context.ExecuteQuery();
            foreach (ListItem item in items)
            {
                Console.WriteLine(item["Created"]);
            }
        }


        //创建列表项
        public static void CreateListItem()
        {
            NetworkCredential nc = new NetworkCredential("spsetupadmin", "ljz815911L", "SP");
            ClientContext context = new ClientContext(SITEURL);
            List list = context.Web.GetList(LISTURL);
            ListItemCreationInformation itemCI = new ListItemCreationInformation();
            ListItem newItem = list.AddItem(itemCI);
            newItem["Title"] = "new item";
            newItem.Update();
            context.ExecuteQuery();
        }
        //更新列表项
        public static void UpdateListItem()
        {
            ClientContext context = new ClientContext(SITEURL);
            List list = context.Web.GetList(LISTURL);
            ListItem item = list.GetItemById(2);
                context.Load(item);
                context.ExecuteQuery();
            item["Title"] =item["Title"]+ "Updated2!";//使用对象必须先load execurequery
            item.Update();
            context.ExecuteQuery();
        }



    }
}

文件上传

using Microsoft.SharePoint.Client;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net;
using System.Text;
using System.Threading.Tasks;

namespace DemoClientFileOpear
{
    class Program
    {
        static string SiteUrl = "http://sp2016:8000/sites/topsite";
        static string WebUrl = string.Empty;
        static string ListUrl = "/sites/topsite/Lists/ListCode";
        static string DocUrl = "/sites/topsite/Documents";
        static void Main(string[] args)
        {
            UploadDoc(); 
        }
        public static void UploadDoc()
        {
            NetworkCredential nc = new NetworkCredential("spsetupadmin", "ljz815911L", "SP");
            ClientContext context = new ClientContext(SiteUrl);
            List list = context.Web.GetList(DocUrl);
            FileCreationInformation fileCI = new FileCreationInformation();
            string direct = @"C:\test.txt";
            FileStream fs = new FileStream(direct, FileMode.Open, FileAccess.Read);
            BinaryReader br = new BinaryReader(fs);
            Byte[] filecontents = br.ReadBytes((int)fs.Length);
            br.Close();
            fs.Close();
            fileCI.Content = filecontents;
            fileCI.Overwrite = true;
            fileCI.Url = "test.txt";
            list.RootFolder.Files.Add(fileCI);
            context.ExecuteQuery();
        }

    }
}

SPQuery 和SPView

using Microsoft.SharePoint.Client;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace DemoClientSPQueryAndSPView
{
    class Program
    {
        static string SITEURL = "http://sp2016:8000/sites/topsite";
        static string LISTURL = "sites/topsite/Lists/ListCode";
        static void Main(string[] args)
        {
            GetListItems();
        }
        public static void GetListItems()
        {
            ClientContext context = new ClientContext(SITEURL);
            List list = context.Web.GetList(LISTURL);
            CamlQuery query = new CamlQuery();
            query.ViewXml = @"<View></View><Query></Query><RowLimit>3</RowLimit>
<QueryOptions><ViewAttributes Scope='Recursive'/></QueryOptions>";

//            Scope = "Recursive"//所有文档
//Scope = "RecursiveAll"//所有文档和文件夹

            ListItemCollection items = list.GetItems(query);
            context.Load(items);
            context.ExecuteQuery();
            foreach (ListItem item in items)
            {
                Console.WriteLine(item["Created"]);
            }
        }
    }
}

 

posted @ 2020-05-22 17:56  七秒钟得记忆  阅读(109)  评论(0)    收藏  举报