Sharepoint 2016内部部署详细信息项目版本字段信息

时间:2018-07-25 12:26:33

标签: sharepoint sharepoint-2016

我正在使用SharePoint 2016 CSOM来获取列表项的版本历史记录。不幸的是我没有得到字段值。请在下面找到代码。

       var file = item.File;
            var versionFiles = file.Versions;
            var fa = file.ListItemAllFields;

            clientContext.Load(fa);
            clientContext.Load(file);
            clientContext.Load(versionFiles);
            clientContext.ExecuteQuery();


            if (null != versionFiles)
            {
                var fileVersion = file.Versions[5];
                SP.File oldFile =web.GetFileByServerRelativeUrl("/sites/site/_vti_history/1234/list1/file1.pdf");
                var allField = oldFile.ListItemAllFields;
                clientContext.Load(allField);


             }

1 个答案:

答案 0 :(得分:0)

您可以从Lists.asmx获取版本历史记录元数据。

示例代码:

var web = clientContext.Web;
                List spList = clientContext.Web.Lists.GetByTitle("MyDoc");                
                var item = spList.GetItemById(43);
                clientContext.Load(spList);
                clientContext.Load(item);
                clientContext.ExecuteQuery();

                #region customList
                Lists.Lists listService = new Lists.Lists();
                listService.Credentials = System.Net.CredentialCache.DefaultCredentials;

                listService.Url = siteUrl + "/_vti_bin/lists.asmx";
                XmlNode nodeAttachments = listService.GetVersionCollection(spList.Id.ToString(), item.Id.ToString(), "Title");

                foreach (System.Xml.XmlNode xNode in nodeAttachments)
                {
                    Console.WriteLine(xNode.Attributes["Title"].Value);
                }