我正在尝试创建一个控件,它将向匿名用户提供任何特定版本的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;
}
任何帮助都会受到极大的关注!如果需要进一步澄清,请告诉我们!
答案 0 :(得分:0)
从SPFileVersion中,您可以获取与该页面的特定版本相关联的列表项。然后,您的控件可以使用版本化列表项的属性值设置(覆盖)页面上的字段控件的值(由页面的页面布局定义)。