SharePoint item.File - ServerObjectNullReferenceException

SharePoint item.File - ServerObjectNullReferenceException

我正在尝试加载有关列表中所有文件项的信息。在此代码段中,item 指的是 ListItem

switch(item.FileSystemObjectType)
            {
                case FileSystemObjectType.File:
                    if (ListOptions.IndexFileItems)
                    {
                        ClientContext.Load(item, i => i.File);
                        ClientContext.ExecuteQuery();
                        if (item.File.Exists)

当代码为运行时,到达最后一行,然后抛出ServerObjectNullReferenceException。

我不明白这一点,因为该项目已在其 FileSystemObjectType 中声明其自身为 File 类型,我不应该期望 File属性有参考,加载了吗?我加载文件不正确吗?

ListItem.File在文档库中使用,请确保列表对象是一个库:

ListItem.File property

我测试了下面的代码片段,按预期工作:

            ClientContext ctx = new ClientContext("http://sp/sites/dev/");
            List list = ctx.Web.Lists.GetByTitle("dccc");
            CamlQuery caml = new CamlQuery();
            ListItemCollection items = list.GetItems(caml);
            ctx.Load(items);
            ctx.ExecuteQuery();
            foreach (ListItem item in items)
            {

                switch (item.FileSystemObjectType)
                {
                    case FileSystemObjectType.File:
                        ctx.Load(item, i => i.File);
                        ctx.ExecuteQuery();
                        if (item.File.Exists)
                        {
                            Console.WriteLine(item.File.Name);
                        }
                        break;
                }
            }

所以文件是两个jpg文件: