C# 删除Sharepoint中的特定文件版本
我正试图用SP客户端方法解决这个问题。现在我正在使用Delete方法,它获取文件Id和版本,并删除文件的特定版本。问题是,当该版本是最后一个实际版本时,SharePoint将实际删除该文件及其所有版本。我做错了什么C# 删除Sharepoint中的特定文件版本,c#,sharepoint,sharepoint-2013,C#,Sharepoint,Sharepoint 2013,我正试图用SP客户端方法解决这个问题。现在我正在使用Delete方法,它获取文件Id和版本,并删除文件的特定版本。问题是,当该版本是最后一个实际版本时,SharePoint将实际删除该文件及其所有版本。我做错了什么 using (var ctx = CreateClientContext()) { var fileItem = ctx.Web.Lists.GetByTitle(DocumentsFolder).GetItemById(fileId); ctx.Load(fileI
using (var ctx = CreateClientContext())
{
var fileItem = ctx.Web.Lists.GetByTitle(DocumentsFolder).GetItemById(fileId);
ctx.Load(fileItem, item => item.File.Versions, item => item.File, item => item.File.UIVersionLabel);
ctx.ExecuteQuery();
if (string.Equals(fileItem.File.UIVersionLabel, fileVersion, StringComparison.InvariantCulture))
{
fileItem.DeleteObject();
}
else
{
fileItem.File.Versions.First(fi => string.Equals(fi.VersionLabel,fileVersion,StringComparison.InvariantCulture)).DeleteObject();
}
ctx.ExecuteQuery();
}
我没有检查你的密码。但是,最后的版本和文件,它们只是一个文件,它们是相同的。在历史记录列表中,最新版本只是对该文件的引用。因此,如果删除最新版本,则也会删除该文件及其所有版本