【发布时间】:2021-09-20 11:29:20
【问题描述】:
我已经初始化了一个通用列表,我想从 Sharepoint 中保存所有文件和文件夹。
List<object> filesAndFolders = new List<object>();
我已从 SharePoint 加载所有文件和文件夹并将它们添加到列表中,现在我想访问 FieldValues,但是当我尝试遍历列表时,我无法访问文件或文件夹,因为它被保存为对象{Microsoft.Sharepoint.Client.File} 或文件夹。
foreach(var item in filesAndFolders){
//getFiledValues here
item.ListItemAllFields.FiledValues ..
}
我有一个错误说 item.ListItemAllFields.FiledValues 不存在。我该如何解决这个问题并能够将文件和文件夹保存在一个列表中? 谢谢!
【问题讨论】:
-
类
object没有属性ListItemAllFields所以编译器会抱怨。在您的通用列表中,您也可以存储不具有该属性的其他类型的对象,因此编译器可以保护您免受错误的影响。要访问该属性,您需要将条目转换为正确的类型,例如var fileItem = item as Microsoft.Sharepoint.Client.File;然后使用文件项。如果 item 不是该类型,则 fileItem 将为 null,并且您将在运行时收到错误。
标签: c# asp.net-core sharepoint