我们有一台SharePoint Server和另一台拥有我们的Web服务的服务器(未在计算机上安装SharePoint)。我们正在尝试使用我们的Web服务访问SharePoint服务器列表项。我们正在计算列表项,但是当我们进行CAML查询时,它会返回0项。
我们如何继续获取列表项?
这是我们的代码供您参考。
List Device_List = context.Web.Lists.GetByTitle("MasterList");
context.Load(Device_List);
context.ExecuteQuery();
int position = Device_List.ItemCount;
CamlQuery query = new CamlQuery();
query.ViewXml = @"<View><Query><Where><Eq><FieldRef Name='key' /><Value Type='Text'>ConTransDB</Value></Eq></Where></Query></View>";
ListItemCollection itemCollection = Device_List.GetItems(query);
context.Load(itemCollection);
context.ExecuteQuery();
if (itemCollection.Count > 0 && itemCollection != null)
{
string value = itemCollection[0]["value"].ToString();
}
答案 0 :(得分:0)
ViewXml
未完成,它要求您定义完整视图,而不仅仅是查询。所以它看起来像:
query.ViewXml = "<View><Query><Where>...</Where></Query></View>";
您甚至可以添加除查询之外的更多信息,例如:
<View>
<Query>
<Where>...</Where>
<OrderBy>...</OrderBy>
</Query>
<RowLimit>...</RowLimit>
<ViewFields>...</ViewFields>
</View>