在sharepoint中以编程方式签入文档时出现问题



这是我的代码:

if (docLib.DoesUserHavePermissions(SPBasePermissions.DeleteVersions))
{
     item.File.CheckIn(comment, SPCheckinType.OverwriteCheckIn);
}
else
{
     item.File.CheckIn(comment);
}

我为文档库启用了版本控制。假设我有一个用户Bobby,他没有删除版本的权限,当他想要上传和签入文档时,该文档将有两个版本。

问题是Bobby没有删除版本权限,所以使用OverwriteCheckIn会抛出Access Denied错误。

谁有解决办法?

我认为您必须先检查出该文件,然后将其添加到文档库中,然后可能您可以覆盖现有文件。或者您可以在RunWithElevatedPrivileges

中运行此代码

最新更新