c# - 将 Sharepoint 中的当前字段数据保存到列表的另一个实例
问题描述
我正在尝试通过 C# 连接到 SharePoint 列表并循环遍历,直到在列表中找到具有特定功能的项目,然后我想保存该项目中的一些数据并将其复制到另一个项目。我得到一个Microsoft.SharePoint.Client.PropertyOrFieldNotInitializedException error.
//connect to the SharePoint site
ClientContext context = new ClientContext(@"https://website");
List list = context.Web.Lists.GetByTitle("listName");
ListItemCollection items = list.GetItem(CamlQuery.CreateAllItemsQuery());
context.Load(items);
context.ExecuteQuery();
//loop through items
foreach (var listItem in items)
{
string tmp = null;
if (listItem["fieldName"] != null)
// this is where get the error when I reach one that isn't null
{
if (listItem["fieldName"].ToString() == "criteria")
{
tmp = listItem["fieldName"].ToString();
foreach (var listItem2 in items)
{
if (listItem2["criteria2"].ToString() == tmp)
{
listItem2["fieldName"] = tmp;
listItem2.Update();
}
break;
}
break;
}
}
}
尝试将值输入listItem["fieldname"]
并保存,然后将其复制到listItem2["fieldname"]
.
目前,我收到一个错误:Microsoft.SharePoint.Client.PropertyOrFieldNotInitializedException
错误。
解决方案
尝试加载字段。
ClientContext context = new ClientContext(@"http://SP13");
List list = context.Web.Lists.GetByTitle("List23");
ListItemCollection items = list.GetItems(CamlQuery.CreateAllItemsQuery());
context.Load(items, item => item.Include(i => i["Title"], i => i["richtext"]));
context.ExecuteQuery();
推荐阅读
- python - Python Rest客户端api上传文件
- apache-nifi - NiFi - SelectHiveQL 可以以镶木地板格式从 CDH 集群上的表中读取数据吗?
- python - 当我运行我的for循环时,不断收到“AttributeError:'numpy.float64'对象没有属性'append'”
- c++ - 为什么可以修改数组 b?
- mysql - WHERE 条件以某种方式避免全表扫描
- python - 从(元组的元组)中删除重复项
- html - 如何使用 axios 向 img html 标签发出视频流 http GET 请求?
- java - 在哪里可以找到最新的 OpenJDK 8 GA 构建 Windows 10?
- matlab - 读取大量 .h5 数据集
- jwt - NBF 在 JWT 上下文中代表什么?