我的列表中有一个计算字段,我正在尝试在此字段上使用过滤器。出于某种原因,以下查询始终返回所有项目而不是过滤的项目集合:
var spQuery = new SPQuery
{
Query = @"<Where><Geq><FieldRef Name='Score' /><Value Type='Calculated'>10000</Value></Geq></Where><OrderBy><FieldRef Name='Modified' Ascending='True' /></OrderBy>",
RowLimit = 200,
ViewFields = @"<FieldRef Name='Username' />"
};
var spList = web.Lists["Users"];
var spListItemCollection = spList.GetItems(spQuery);
答案 0 :(得分:1)
尝试使用
spQuery.ViewFieldsOnly = true;
答案 1 :(得分:0)
从SPQuery中删除query
元素。请参阅语法here
答案 2 :(得分:0)
尝试删除ViewFields部分(获取所有列,也包括计算所需的列)或设置SPQUery.IncludeMandatoryColumns