4

我正在尝试创建一个控件,该控件将向匿名用户提供任何特定版本的共享点发布页面。例子:

MyPage.aspx 有 1.0、2.0、3.0、4.0 版本,其中 4.0 是最新发布的版本。默认情况下,Sharepoint 将向匿名用户提供 4.0 版。我希望能够以编程方式为他们提供 2.0 版。我知道如何检查匿名用户,并获取我想要的页面版本的对象。我的问题是,我如何告诉 sharepoint 传递指定的页面对象?

以下是我目前正在使用的内容......

PublishingPage currentPage = GetCurrentPageObjectVersion(2);
        if (currentPage != null)
        {
            // Tell sharepoint to deliver currentPage somehow?
        }

private SPFileVersion GetCurrentPageObjectVersion(int requestedVersion)
    {
        SPFileVersion specifiedVersion = null;
        try
        {
            PublishingPage currentPage = PublishingPage.GetPublishingPage(SPContext.Current.ListItem);
            specifiedVersion = currentPage.ListItem.File.Versions.GetVersionFromID(requestedVersion);
        }
        catch (Exception e)
        {
            // Error handling here
        }

        return specifiedVersion;
    }

任何帮助将不胜感激!如果需要进一步澄清,请告诉我!

4

1 回答 1

0

从您的 SPFileVersion 中,您可以获取与页面的特定版本关联的列表项。然后,您的控件可以使用版本化列表项的属性值设置(覆盖)页面上字段控件的值(由页面的页面布局定义)。

于 2012-01-17T08:48:11.633 回答