SharePoint CAML 查询:值不在预期范围内
本文关键字:范围内 CAML 查询 SharePoint | 更新日期: 2023-09-27 18:33:36
>我在一个类中创建了以下方法,该方法旨在获取 SharePont 列表中的所有项目并将它们加载到我的实体中:
public List<ItemEntity> FetchItems(SPList list)
{
// build the CAML query of field names that we wish to retreive
var query = new SPQuery
{
ViewFields = string.Concat("<FieldRef Name='Modified' />",
"<FieldRef Name='Modified By' />",
"<FieldRef Name='Created' />",
"<FieldRef Name='Created By' />")
};
SPListItemCollection items = list.GetItems(query);
return (from SPListItem item in items
select Load("", // item id
"", // content type
"", // display name
"", // name
"", // title
"", // url
"", // author
"", // editor
Convert.ToDateTime(item["Modified"]), // date time modified
item["Modified By"].ToString(), // modified by
Convert.ToDateTime(item["Created"]), // date time created
item["Created By"].ToString() // created by
)).ToList();
}
出于某种原因,我不明白它抛出了以下错误:
值不在预期范围内。
我认为这可能与我的 CAML 查询返回的结果有关,但即便如此,我还是将其限制为元数据字段(我相信每个文件都应该存在(,不幸的是我仍然收到错误。我哪里出错了?
我相信
您缺少某些内置字段的正确内部名称。
尝试使用:
item["Author"].ToString() instead of item["Created By"].ToString() and
item["Editor"].ToString() instead of item["Modified By"].ToString()
有关 sharepoint 2010 内部字段名称的完整参考,我通常参考以下链接:http://sharepointmalarkey.wordpress.com/2010/10/12/sharepoint-internal-field-names-sharepoint-2010/