C# - 如何在 C# 中合并 SharePoint 列表



我正在尝试将两个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"

最新更新