.Net托管客戶端模型,是SharePoint2010推出的三種客戶端模型“.NET托管”、“ECMAScript”、“Sliverlight”的一種,相比Script的客戶端對象模型,VS里使用的.Net客戶端對象模型感覺使用起來,方便了很多,至少編寫的時候會有提示,編譯的時候會有錯誤提示,然后,我們可以把相應的兩個dll文件,和編寫的程序放到一起,放在客戶端執行,感覺還是有收獲的。
下面介紹下.Net托管的使用,首先新建一個控制台程序,選擇.Net3.5框架,然后在引用中添加我們需要的客戶端引用,位於/ISAPI下的Microsoft.SharePoint.Client.dll和Microsoft.SharePoint.Client.Runtime.dll,最后,在頭部using中引用我們需要的頭文件,就可以編寫我們的.Net托管客戶端對象模型代碼了。
談談自己對這個客戶端對象模型的理解,感覺.Net的對象模型還是和SharePoint很貼近的,不僅僅是編寫起來相對ECMAScript方便,而且掌握起來更加容易一點,尤其方便我們編寫一些小工具,進行列表操作,不用非要在服務器端運行,還是有提高到。
我的例子依然是一個讀取SharePoint2010列表數據的示例,有使用不當的地方,歡迎大家指正。
static void Main(string[] args)
{
ClientContext context = new ClientContext("http://sharepoint2010:10086/");
Web web = context.Web;
List list = web.Lists.GetByTitle("MyFirstLists");
CamlQuery query = new CamlQuery();
query.ViewXml = @"<view><query></query></view>";
ListItemCollection listitem = list.GetItems(query);
context.Load(listitem);
context.Load(web);
context.Load(list);
context.ExecuteQuery();
String title = web.Title;
String listname = list.Title;
Console.WriteLine("網站名稱:" + title);
Console.WriteLine("列表名稱:"+listname);
Console.WriteLine("列表數據:");
foreach (ListItem list2 in listitem)
{
Console.WriteLine(list2["Title"].ToString());
}
}
和ECMAScript客戶端對象模型一樣,程序在Load時,並沒有請求數據,而是在ExecuteQuery的時候才真正的發起請求。接下來,給大家列幾個我參考的鏈接:
使用 .NET 客戶端對象模型訪問 SharePoint 2010 數據
http://msdn.microsoft.com/zh-cn/library/gg277498.aspx
SharePoint2010 .NET 客戶端對象模型類庫
http://msdn.microsoft.com/en-us/library/ee536622.aspx
作者:霖雨
出處:http://www.cnblogs.com/jianyus
本文版權歸 霖雨和博客園共有,歡迎轉載,但請注明出處。