繁体   English   中英

Sharepoint 2010 Client OM - 如何获取最后批准的文档版本?

[英]Sharepoint 2010 Client OM - How to get the Last approved document version?

我正在尝试使用 sharepoint foundation 2010 作为网站的文件存储。 每个文档更新都必须 go 通过审批周期,并最终达到批准状态才能显示在最终用户的网站上。 当文档在 sharepoint 中更新时,即使之前的版本已获批准,状态也会重置为“草稿”。 这是预期的行为。

File.Versions 给了我版本列表。

如何获得上次“批准”的版本?

您将需要遍历 ListItem 的版本并找到已发布的最新版本。 使用SPListItemVersionCollection遍历版本并检查SPFileLevel

根据Sebastian WojciechowskiSPListItemVersionCollection上的 MSDN 文章的社区补充

SPListItem.Versions[0] //this is current version of the item
SPListItem.Versions[1] //this is previous version of the item
SPListItem.Versions[SPListItem.Versions.Count - 1] //this is first version of the item

版本以相反的顺序(从最新到最旧)索引,因此您的代码将类似于:

// Retrieve all versions
SPListItemVersionCollection itemVersions = item.Versions;
for (int i = 0; i < itemVersions.Count - 1; i++)
{
    // Check if version is published
    if (itemVersions[i].Level == SPFileLevel.Published)
    {
        return itemVersions[i];
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM