如何在使用客户端 OM 查询列表时动态生成/指定要加载的项目字段列表?
这可以使用 CAML 查询上的标签来完成,但这会加载额外的不需要的字段,从而使有效负载更大。见这里:http: //blogs.technet.com/b/speschka/archive/2009/11/01/using-the-sharepoint-2010-client-object-model-part-3.aspx
这是我正在使用的测试代码:
ClientContext clientContext = new ClientContext("http://myserver/sites/mysite");
Web site = clientContext.Web;
List list = clientContext.Web.Lists.GetByTitle("MyList");
CamlQuery camlQuery = new CamlQuery();
camlQuery.ViewXml = "<View Scope='RecursiveAll'><RowLimit>100</RowLimit></View>";
ListItemCollection listItems = list.GetItems(camlQuery);
clientContext.Load(listItems,
items => items.ListItemCollectionPosition,
items => items.Include(
item => item["ID"],
item => item["Title"]
));
clientContext.ExecuteQuery();
我想要做的是在运行时为 Include 方法生成 lambda 表达式。仍然没有运气。我尝试的每个解决方案都会给我错误“不支持查询表达式”。