我正在尝试将两个SharePoint
列表合并为一个,以便我可以将两个单独列表中的项目作为一个实体返回。
使用哪个对象,我都没有找到组合它们的好方法。
有没有一种简单的方法可以组合以下内容?
SPList pubList = web.Lists["public"];
SPList secureList = web.Lists["secure"];
或
SPListItemCollection pubFiles = retrieveDocs(web, meta, pubList);
SPListItemCollection secureFiles = retrieveDocs(web, meta, secureList);
或将这些DataTables
转换为SPListItemCollections
DataTable pubTable = pubFiles.GetDataTable();
DataTable secureTable = secureFiles.GetDataTable();
pubTable.Merge(secureTable);
这篇文章回答了我的问题。
总结
using System.Linq;
Then
List<SPListItem> allItems = new List<SPListItem>();
allItems.AddRange(list.GetItems(spQuery).Cast<SPListItem>().ToList());
allItems.AddRange(list2.GetItems(spQuery).Cast<SPListItem>().ToList());
//Do something to the "allItems"