Как показать конкретную версию страницы публикации sharepoint вместо самой последней утвержденной версии анонимным пользователям - PullRequest
4 голосов
/ 17 января 2012

Я пытаюсь создать элемент управления, который будет доставлять любую конкретную версию страницы публикации sharepoint анонимным пользователям.Пример:

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;
    }

Любая помощь будет очень полезна!Пожалуйста, дайте мне знать, если понадобятся дальнейшие разъяснения!

1 Ответ

0 голосов
/ 17 января 2012

В вашем SPFileVersion вы можете получить элемент списка, связанный с конкретной версией страницы.Затем ваш элемент управления может установить (переопределить) значения элементов управления поля на странице (определенные макетом страницы) значениями свойств элемента списка версий.

...