获取版本号

时间:2013-06-04 06:08:51

标签: ektron

如何获取Ektron 8.0中所选Ektron内容的版本号。

 ContentAPI m_refContentApi = new ContentAPI();
 var data = m_refContentApi.GetHistoryList(ContentBlockId);

我已尝试过上面的代码,但它没有提供任何版本号。

任何人回复

1 个答案:

答案 0 :(得分:2)

我猜你在这里说的版本号是在工作区查看内容片段历史时看到的版本号。解决这个问题...

我不相信此版本号可用作Ektron提供的对象的属性。如果您需要此版本号,则需要复制Ektron用于生成版本号的过程。

这个答案是基于对/workarea/controls/viewhistorylist.aspx.cs代码的分析。我正在使用Ektron 8.6 SP1 在工作区中,使用以下代码访问历史信息:

Ektron.Cms.Commerce.CatalogEntryApi m_refCatalogAPI = new Ektron.Cms.Commerce.CatalogEntryApi();
List<Ektron.Cms.Commerce.EntryVersionData> entry_version_list = new List<Ektron.Cms.Commerce.EntryVersionData>();
if (Id != -1)
{
    entry_version_list = m_refCatalogAPI.GetVersionList(Id, ContentLanguage);
}

“Id”变量是内容片段的EktronId 不幸的是,这个列表本身不包含版本号。有一个名为VersionId的变量,但这与在workarea用户界面中看到的不同。

获取用于通过列表中的元素打印Ektron循环的版本,并检查内容片段是否先前已发布。如果版本已发布,则会将其视为主要编号,并显示在小数点左侧,如果未发布,则显示为小数点右侧的次要编号。

如果您不需要使用的数字来匹配工作区GUI,那么您可能需要考虑使用VersionId属性。较小的数字表示较旧的内容,但如果您需要区分主要的次要版本,这将无法解决问题,您将需要复制Ektron使用的过程。