本示例说明如何从服务器检索项目以及如何获得每个列表项目的更深层属性。默认情况下,服务器将仅返回表示对象的最少数据量。呼叫者可以从服务器请求其他信息。
ClientContext clientContext = new ClientContext(siteUrl);
List oList = clientContext.Web.Lists.GetByTitle("Announcements");
CamlQuery camlQuery = new CamlQuery();
camlQuery.ViewXml = "<View><RowLimit>100</RowLimit></View>";
ListItemCollection collListItem = oList.GetItems(camlQuery);
// 该请求的第一行指示要从服务器加载的列表项集合
// 第二行使用lambda向服务器请求
// 响应中还包括其他属性
// 第三至第五行是从服务器请求的属性
clientContext.Load(collListItem,
items => items.Include(
item => item.Id,
item => item.DisplayName,
item => item.HasUniqueRoleAssignments));
clientContext.ExecuteQuery();
foreach (ListItem oListItem in collListItem)
{
Console.WriteLine("ID: {0} \nDisplay name: {1} \nUnique role assignments: {2}",
oListItem.Id, oListItem.DisplayName, oListItem.HasUniqueRoleAssignments);
}