[英]SharePoint CAML Query: Value does not fall into expected range
我在一個類中創建了以下方法,該類旨在獲取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/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.